Version Notes
Download this release
Release Info
Developer | Sebastian Ertner |
Extension | Expercash_riskmanagement |
Version | 15.01.06 |
Comparing to | |
See all releases |
Version 15.01.06
- app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Renderer/Address/Country.php +38 -0
- app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Renderer/Address/Street.php +29 -0
- app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Renderer/Customer/Gender.php +36 -0
- app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Renderer/Escore/Condition.php +50 -0
- app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Renderer/Escore/Value.php +37 -0
- app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Scoring.php +301 -0
- app/code/community/Expercash/Scoring/Block/Adminhtml/Field/Country/Renderer.php +24 -0
- app/code/community/Expercash/Scoring/Block/Checkout/Onepage/Billing/Agreement.php +36 -0
- app/code/community/Expercash/Scoring/Helper/Data.php +82 -0
- app/code/community/Expercash/Scoring/Helper/Request/Params/Adapter.php +183 -0
- app/code/community/Expercash/Scoring/Model/Checkout/Payment/Methods/Filter.php +106 -0
- app/code/community/Expercash/Scoring/Model/Config.php +512 -0
- app/code/community/Expercash/Scoring/Model/Mysql4/Solvency/Check/Result.php +25 -0
- app/code/community/Expercash/Scoring/Model/Mysql4/Solvency/Check/Result/Collection.php +100 -0
- app/code/community/Expercash/Scoring/Model/Observer.php +153 -0
- app/code/community/Expercash/Scoring/Model/Quote/Address/Validation.php +110 -0
- app/code/community/Expercash/Scoring/Model/Quote/Amount/Validation.php +39 -0
- app/code/community/Expercash/Scoring/Model/Solvency/Check.php +388 -0
- app/code/community/Expercash/Scoring/Model/Solvency/Check/Client.php +136 -0
- app/code/community/Expercash/Scoring/Model/Solvency/Check/Response.php +56 -0
- app/code/community/Expercash/Scoring/Model/Solvency/Check/Result.php +152 -0
- app/code/community/Expercash/Scoring/Model/System/Config/Source/Scoring/Condition.php +67 -0
- app/code/community/Expercash/Scoring/Model/System/Config/Source/Scoring/Value.php +71 -0
- app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/Expercash/Address/CountryTest.php +36 -0
- app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/Expercash/Address/StreetTest.php +40 -0
- app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/Expercash/Customer/GenderTest.php +47 -0
- app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/Expercash/Escore/ConditionTest.php +108 -0
- app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/Expercash/Escore/ValueTest.php +69 -0
- app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/ScoringTest.php +62 -0
- app/code/community/Expercash/Scoring/Test/Block/Checkout/Onepage/Billing/AgreementTest.php +50 -0
- app/code/community/Expercash/Scoring/Test/Helper/DataTest.php +47 -0
- app/code/community/Expercash/Scoring/Test/Helper/Request/AdapterTest.php +178 -0
- app/code/community/Expercash/Scoring/Test/Model/Checkout/Payment/Methods/FilterTest.php +165 -0
- app/code/community/Expercash/Scoring/Test/Model/Config/Source/Scoring/ConditionTest.php +46 -0
- app/code/community/Expercash/Scoring/Test/Model/Config/Source/Scoring/ValueTest.php +62 -0
- app/code/community/Expercash/Scoring/Test/Model/ConfigTest.php +346 -0
- app/code/community/Expercash/Scoring/Test/Model/Mysql4/Solvency/Check/Result/CollectionTest.php +229 -0
- app/code/community/Expercash/Scoring/Test/Model/Mysql4/Solvency/Check/Result/CollectionTest/fixtures/checks.yaml +19 -0
- app/code/community/Expercash/Scoring/Test/Model/ObserverTest.php +124 -0
- app/code/community/Expercash/Scoring/Test/Model/Quote/Address/ValidationTest.php +71 -0
- app/code/community/Expercash/Scoring/Test/Model/Quote/Amount/ValidationTest.php +50 -0
- app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ClientTest.php +62 -0
- app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest.php +111 -0
- app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest/TestFiles/CompleteSuccessfulResponse.xml +9 -0
- app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest/TestFiles/InvalidResponse.xml +9 -0
- app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest/TestFiles/SuccessfulResponseEscoreScoring.xml +10 -0
- app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest/TestFiles/SuccessfulResponseMissingEscore.xml +8 -0
- app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest/TestFiles/SuccessfulResponseMissingEscoreFeature.xml +8 -0
- app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResultTest.php +239 -0
- app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResultTest/fixtures/solvency_check_result.yaml +7 -0
- app/code/community/Expercash/Scoring/Test/Model/Solvency/CheckTest.php +1473 -0
- app/code/community/Expercash/Scoring/controllers/Adminhtml/ScoringController.php +73 -0
- app/code/community/Expercash/Scoring/etc/config.xml +207 -0
- app/code/community/Expercash/Scoring/etc/system.xml +304 -0
- app/code/community/Expercash/Scoring/sql/expercash_scoring_setup/mysql4-install-13.12.05.php +41 -0
- app/code/community/Expercash/Scoring/sql/expercash_scoring_setup/mysql4-upgrade-13.12.05-13.12.20.php +59 -0
- app/code/community/Expercash/Scoring/sql/expercash_scoring_setup/mysql4-upgrade-13.12.20-14.01.08.php +20 -0
- app/design/adminhtml/default/default/layout/expercash_scoring.xml +36 -0
- app/design/frontend/base/default/layout/.gitkeep +0 -0
- app/design/frontend/base/default/layout/scoring.xml +18 -0
- app/design/frontend/base/default/template/expercash-scoring/scoring/agreement.phtml +34 -0
- app/etc/modules/Expercash_Scoring.xml +33 -0
- app/locale/de_DE/Expercash_Scoring.csv +60 -0
- app/locale/en_US/Expercash_Scoring.csv +59 -0
- doc/Expercash_Scoring/.gitkeep +0 -0
- doc/Expercash_Scoring/ChangeLog.pdf +152 -0
- doc/Expercash_Scoring/EndUserDocumentation.pdf +622 -0
- doc/Expercash_Scoring/Endkundendokumentation.pdf +3538 -0
- doc/Expercash_Scoring/Specification.pdf +5098 -0
- js/expercash/scoring.js +12 -0
- package.xml +2 -0
app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Renderer/Address/Country.php
ADDED
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ${MODULENAME}
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Renderer_Address_Country
|
12 |
+
extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
|
13 |
+
{
|
14 |
+
|
15 |
+
/**
|
16 |
+
* @param Varien_Object $row
|
17 |
+
*
|
18 |
+
* @return string - the country name for the country code, empty string if
|
19 |
+
* the name couldn't be retrieved
|
20 |
+
*/
|
21 |
+
public function render(Varien_Object $row)
|
22 |
+
{
|
23 |
+
$value = $row->getData($this->getColumn()->getIndex());
|
24 |
+
$countryName = '';
|
25 |
+
if (strlen(trim($value)) == 2) {
|
26 |
+
$options = Mage::getResourceModel('directory/country_collection')
|
27 |
+
->addCountryIdFilter($value)
|
28 |
+
->load()
|
29 |
+
->toOptionArray();
|
30 |
+
$country = end($options);
|
31 |
+
if (is_array($country) && array_key_exists('label', $country)) {
|
32 |
+
$countryName = $country['label'];
|
33 |
+
}
|
34 |
+
}
|
35 |
+
return $countryName;
|
36 |
+
}
|
37 |
+
|
38 |
+
}
|
app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Renderer/Address/Street.php
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ${MODULENAME}
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Renderer_Address_Street
|
12 |
+
extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
|
13 |
+
{
|
14 |
+
/**
|
15 |
+
* formats street and house number
|
16 |
+
*
|
17 |
+
* @param Varien_Object $row
|
18 |
+
*
|
19 |
+
* @return string - the formatted street with house number
|
20 |
+
*/
|
21 |
+
public function render(Varien_Object $row)
|
22 |
+
{
|
23 |
+
$value = $row->getData($this->getColumn()->getIndex());
|
24 |
+
if (null !== $row->getData('customer_address2')) {
|
25 |
+
$value .= ' ' . $row->getData('customer_address2');
|
26 |
+
}
|
27 |
+
return $value;
|
28 |
+
}
|
29 |
+
}
|
app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Renderer/Customer/Gender.php
ADDED
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ${MODULENAME}
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Renderer_Customer_Gender
|
12 |
+
extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
|
13 |
+
{
|
14 |
+
|
15 |
+
/**
|
16 |
+
* renderer for customer gender in the scoring grid
|
17 |
+
*
|
18 |
+
* @param Varien_Object $row
|
19 |
+
*
|
20 |
+
* @return string - the formatted customer gender, empty string if it couldn't
|
21 |
+
* be retrieved
|
22 |
+
*/
|
23 |
+
public function render(Varien_Object $row)
|
24 |
+
{
|
25 |
+
$value = $row->getData($this->getColumn()->getIndex());
|
26 |
+
$helper = Mage::helper('expercash_scoring/data');
|
27 |
+
if (trim($value) == 'm') {
|
28 |
+
return $helper->__('expercash_scoring::male');
|
29 |
+
}
|
30 |
+
if (trim($value) == 'f') {
|
31 |
+
return $helper->__('expercash_scoring::female');
|
32 |
+
}
|
33 |
+
return '';
|
34 |
+
}
|
35 |
+
|
36 |
+
}
|
app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Renderer/Escore/Condition.php
ADDED
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ${MODULENAME}
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Renderer_Escore_Condition
|
12 |
+
extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
|
13 |
+
{
|
14 |
+
|
15 |
+
/**
|
16 |
+
* renders the expercash 'escore_feature' values to a human readable wording
|
17 |
+
*
|
18 |
+
* @param Varien_Object $row
|
19 |
+
*
|
20 |
+
* @return string
|
21 |
+
*/
|
22 |
+
public function render(Varien_Object $row)
|
23 |
+
{
|
24 |
+
$value = $row->getData($this->getColumn()->getIndex());
|
25 |
+
$helper = Mage::helper('expercash_scoring/data');
|
26 |
+
if ($value == Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE) {
|
27 |
+
return $helper->__(Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_LABEL);
|
28 |
+
}
|
29 |
+
if ($value == Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_VALUE) {
|
30 |
+
return $helper->__(Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_LABEL);
|
31 |
+
}
|
32 |
+
if ($value == Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_UNDELIVERABLE_VALUE) {
|
33 |
+
return $helper->__(Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_UNDELIVERABLE_LABEL);
|
34 |
+
}
|
35 |
+
if ($value == Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::ADDRESS_KNOWN_NO_PERSONAL_INFO_VALUE) {
|
36 |
+
return $helper->__(Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::ADDRESS_KNOWN_NO_PERSONAL_INFO_LABEL);
|
37 |
+
}
|
38 |
+
if ($value == Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::NO_POSTAL_INFORMATION_VALUE) {
|
39 |
+
return $helper->__(Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::NO_POSTAL_INFORMATION_LABEL);
|
40 |
+
}
|
41 |
+
if ($value == Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_BUT_DEAD_VALUE) {
|
42 |
+
return $helper->__(Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_BUT_DEAD_LABEL);
|
43 |
+
}
|
44 |
+
if ($value == Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::ADDRESS_WRONG_VALUE) {
|
45 |
+
return $helper->__(Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::ADDRESS_WRONG_LABEL);
|
46 |
+
}
|
47 |
+
return '';
|
48 |
+
}
|
49 |
+
|
50 |
+
}
|
app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Renderer/Escore/Value.php
ADDED
@@ -0,0 +1,37 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Renderer_Escore_Value
|
12 |
+
extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
|
13 |
+
{
|
14 |
+
|
15 |
+
/**
|
16 |
+
* renders the Expercash scoring values to a human readable format
|
17 |
+
*
|
18 |
+
* @param Varien_Object $row
|
19 |
+
*
|
20 |
+
* @return string
|
21 |
+
*/
|
22 |
+
public function render(Varien_Object $row)
|
23 |
+
{
|
24 |
+
$value = $row->getData($this->getColumn()->getIndex());
|
25 |
+
$helper = Mage::helper('expercash_scoring/data');
|
26 |
+
if ($value == Expercash_Scoring_Model_System_Config_Source_Scoring_Value::GREEN_VALUE) {
|
27 |
+
return $helper->__(Expercash_Scoring_Model_System_Config_Source_Scoring_Value::GREEN_LABEL);
|
28 |
+
}
|
29 |
+
if ($value == Expercash_Scoring_Model_System_Config_Source_Scoring_Value::YELLOW_VALUE) {
|
30 |
+
return $helper->__(Expercash_Scoring_Model_System_Config_Source_Scoring_Value::YELLOW_LABEL);
|
31 |
+
}
|
32 |
+
if ($value == Expercash_Scoring_Model_System_Config_Source_Scoring_Value::RED_VALUE) {
|
33 |
+
return $helper->__(Expercash_Scoring_Model_System_Config_Source_Scoring_Value::RED_LABEL);
|
34 |
+
}
|
35 |
+
return '';
|
36 |
+
}
|
37 |
+
}
|
app/code/community/Expercash/Scoring/Block/Adminhtml/Customer/Edit/Tab/Expercash/Scoring.php
ADDED
@@ -0,0 +1,301 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Scoring
|
12 |
+
extends Mage_Adminhtml_Block_Widget_Grid
|
13 |
+
implements Mage_Adminhtml_Block_Widget_Tab_Interface
|
14 |
+
{
|
15 |
+
public function _construct()
|
16 |
+
{
|
17 |
+
parent::_construct();
|
18 |
+
$this->setId('customer_edit_tab_expercash_scoring');
|
19 |
+
$this->setUseAjax(true);
|
20 |
+
$this->setDefaultSort('created_at');
|
21 |
+
$this->setDefaultDir('DESC');
|
22 |
+
$this->setSaveParametersInSession(true);
|
23 |
+
}
|
24 |
+
|
25 |
+
|
26 |
+
protected function _prepareLayout()
|
27 |
+
{
|
28 |
+
$customer = Mage::registry('current_customer');
|
29 |
+
$url = $this->getUrl(
|
30 |
+
'scoring/adminhtml_scoring/delete',
|
31 |
+
array('_current' => true, 'customer_id' => $customer->getId())
|
32 |
+
);
|
33 |
+
$this->setChild(
|
34 |
+
'delete_button',
|
35 |
+
$this->getLayout()->createBlock('adminhtml/widget_button')
|
36 |
+
->setData(
|
37 |
+
array(
|
38 |
+
'label' => Mage::helper('expercash_scoring/data')
|
39 |
+
->__(
|
40 |
+
'Delete scoring information'
|
41 |
+
),
|
42 |
+
'onclick' => "setLocation('$url')",
|
43 |
+
'class' => 'task'
|
44 |
+
)
|
45 |
+
)
|
46 |
+
);
|
47 |
+
parent::_prepareLayout();
|
48 |
+
}
|
49 |
+
|
50 |
+
public function getDeleteButtonHtml()
|
51 |
+
{
|
52 |
+
return $this->getChildHtml('delete_button');
|
53 |
+
}
|
54 |
+
|
55 |
+
|
56 |
+
public function getMainButtonsHtml()
|
57 |
+
{
|
58 |
+
$html = '';
|
59 |
+
$html .= $this->getDeleteButtonHtml();
|
60 |
+
if ($this->getFilterVisibility()) {
|
61 |
+
$html .= $this->getResetFilterButtonHtml();
|
62 |
+
$html .= $this->getSearchButtonHtml();
|
63 |
+
}
|
64 |
+
|
65 |
+
return $html;
|
66 |
+
}
|
67 |
+
|
68 |
+
/**
|
69 |
+
* Return Tab label
|
70 |
+
*
|
71 |
+
* @return string
|
72 |
+
*/
|
73 |
+
public function getTabLabel()
|
74 |
+
{
|
75 |
+
return $this->__('Scoring Information');
|
76 |
+
}
|
77 |
+
|
78 |
+
/**
|
79 |
+
* Return Tab label
|
80 |
+
*
|
81 |
+
* @return string
|
82 |
+
*/
|
83 |
+
public function getTabTitle()
|
84 |
+
{
|
85 |
+
return $this->__('Scoring Information');
|
86 |
+
}
|
87 |
+
|
88 |
+
/**
|
89 |
+
* Can show tab in tabs
|
90 |
+
*
|
91 |
+
* @return boolean
|
92 |
+
*/
|
93 |
+
public function canShowTab()
|
94 |
+
{
|
95 |
+
$customer = Mage::registry('current_customer');
|
96 |
+
if ($customer && 0 < $customer->getId()) {
|
97 |
+
return true;
|
98 |
+
}
|
99 |
+
|
100 |
+
return false;
|
101 |
+
}
|
102 |
+
|
103 |
+
|
104 |
+
/*
|
105 |
+
* Retrieves Grid Url
|
106 |
+
*
|
107 |
+
* @return string
|
108 |
+
*/
|
109 |
+
public function getGridUrl()
|
110 |
+
{
|
111 |
+
$customer = Mage::registry('current_customer');
|
112 |
+
|
113 |
+
return $this->getUrl(
|
114 |
+
'scoring/adminhtml_scoring/grid', array('id' => $customer->getId())
|
115 |
+
);
|
116 |
+
}
|
117 |
+
|
118 |
+
/**
|
119 |
+
* Tab is hidden
|
120 |
+
*
|
121 |
+
* @return boolean
|
122 |
+
*/
|
123 |
+
public function isHidden()
|
124 |
+
{
|
125 |
+
return false;
|
126 |
+
}
|
127 |
+
|
128 |
+
|
129 |
+
/**
|
130 |
+
* Defines after which tab, this tab should be rendered
|
131 |
+
*
|
132 |
+
* @return string
|
133 |
+
*/
|
134 |
+
public function getAfter()
|
135 |
+
{
|
136 |
+
return 'orders';
|
137 |
+
}
|
138 |
+
|
139 |
+
|
140 |
+
protected function _prepareCollection()
|
141 |
+
{
|
142 |
+
$customer = Mage::registry('current_customer');
|
143 |
+
$collection = Mage::getModel('expercash_scoring/solvency_check_result')
|
144 |
+
->getCollection()
|
145 |
+
->addFieldToFilter('customer_id', $customer->getId());
|
146 |
+
|
147 |
+
$this->setCollection($collection);
|
148 |
+
|
149 |
+
return parent::_prepareCollection();
|
150 |
+
}
|
151 |
+
|
152 |
+
protected function _prepareColumns()
|
153 |
+
{
|
154 |
+
$customer = Mage::registry('current_customer');
|
155 |
+
$this->addColumn(
|
156 |
+
'escore', array(
|
157 |
+
'header' => Mage::helper('expercash_scoring/data')
|
158 |
+
->__('Scoring value'),
|
159 |
+
'align' => 'right',
|
160 |
+
'index' => 'escore',
|
161 |
+
'renderer' => 'expercash_scoring/adminhtml_customer_edit_tab_expercash_renderer_escore_value'
|
162 |
+
)
|
163 |
+
);
|
164 |
+
$this->addColumn(
|
165 |
+
'escore_value', array(
|
166 |
+
'header' => Mage::helper(
|
167 |
+
'expercash_scoring/data'
|
168 |
+
)->__('Escore Value'),
|
169 |
+
'index' => 'escore_value',
|
170 |
+
)
|
171 |
+
);
|
172 |
+
$this->addColumn(
|
173 |
+
'escore_feature', array(
|
174 |
+
'header' => Mage::helper(
|
175 |
+
'expercash_scoring/data'
|
176 |
+
)->__('Escore Feature'),
|
177 |
+
'index' => 'escore_feature',
|
178 |
+
'renderer' => 'expercash_scoring/adminhtml_customer_edit_tab_expercash_renderer_escore_condition'
|
179 |
+
)
|
180 |
+
);
|
181 |
+
$this->addColumn(
|
182 |
+
'customer_gender', array(
|
183 |
+
'header' => Mage::helper(
|
184 |
+
'expercash_scoring/data'
|
185 |
+
)->__('Customer gender'),
|
186 |
+
'index' => 'customer_gender',
|
187 |
+
)
|
188 |
+
);
|
189 |
+
$this->addColumn(
|
190 |
+
'customer_date_of_birth', array(
|
191 |
+
'header' => Mage::helper(
|
192 |
+
'expercash_scoring/data'
|
193 |
+
)->__('Customer date of birth'),
|
194 |
+
'index' => 'customer_date_of_birth',
|
195 |
+
)
|
196 |
+
);
|
197 |
+
$this->addColumn(
|
198 |
+
'customer_prename', array(
|
199 |
+
'header' => Mage::helper(
|
200 |
+
'expercash_scoring/data'
|
201 |
+
)->__('Customer prename'),
|
202 |
+
'index' => 'customer_prename',
|
203 |
+
'renderer' => 'expercash_scoring/adminhtml_customer_edit_tab_expercash_renderer_customer_gender'
|
204 |
+
)
|
205 |
+
);
|
206 |
+
|
207 |
+
$this->addColumn(
|
208 |
+
'customer_name', array(
|
209 |
+
'header' => Mage::helper(
|
210 |
+
'expercash_scoring/data'
|
211 |
+
)->__('Customer name'),
|
212 |
+
'index' => 'customer_name',
|
213 |
+
)
|
214 |
+
);
|
215 |
+
|
216 |
+
$this->addColumn(
|
217 |
+
'customer_address1', array(
|
218 |
+
'header' => Mage::helper(
|
219 |
+
'expercash_scoring/data'
|
220 |
+
)->__('Customer street'),
|
221 |
+
'index' => 'customer_address1',
|
222 |
+
'renderer' => 'expercash_scoring/adminhtml_customer_edit_tab_expercash_renderer_address_street'
|
223 |
+
)
|
224 |
+
);
|
225 |
+
$this->addColumn(
|
226 |
+
'customer_zip', array(
|
227 |
+
'header' => Mage::helper(
|
228 |
+
'expercash_scoring/data'
|
229 |
+
)->__('Customer zip'),
|
230 |
+
'index' => 'customer_zip',
|
231 |
+
)
|
232 |
+
);
|
233 |
+
$this->addColumn(
|
234 |
+
'customer_city', array(
|
235 |
+
'header' => Mage::helper(
|
236 |
+
'expercash_scoring/data'
|
237 |
+
)->__('Customer city'),
|
238 |
+
'index' => 'customer_city',
|
239 |
+
)
|
240 |
+
);
|
241 |
+
$this->addColumn(
|
242 |
+
'customer_city', array(
|
243 |
+
'header' => Mage::helper(
|
244 |
+
'expercash_scoring/data'
|
245 |
+
)->__('Customer city'),
|
246 |
+
'index' => 'customer_city',
|
247 |
+
)
|
248 |
+
);
|
249 |
+
$this->addColumn(
|
250 |
+
'customer_country', array(
|
251 |
+
'header' => Mage::helper(
|
252 |
+
'expercash_scoring/data'
|
253 |
+
)->__('Customer country'),
|
254 |
+
'index' => 'customer_country',
|
255 |
+
'renderer' => 'expercash_scoring/adminhtml_customer_edit_tab_expercash_renderer_address_country'
|
256 |
+
)
|
257 |
+
);
|
258 |
+
|
259 |
+
$this->addColumn(
|
260 |
+
'created_at', array(
|
261 |
+
'header' => Mage::helper(
|
262 |
+
'expercash_scoring/data'
|
263 |
+
)->__('created at'),
|
264 |
+
'index' => 'created_at',
|
265 |
+
)
|
266 |
+
);
|
267 |
+
|
268 |
+
|
269 |
+
$this->addColumn(
|
270 |
+
'action',
|
271 |
+
array(
|
272 |
+
'header' => Mage::helper('expercash_scoring/data')->__(
|
273 |
+
'Action'
|
274 |
+
),
|
275 |
+
'width' => '100',
|
276 |
+
'type' => 'action',
|
277 |
+
'getter' => 'getId',
|
278 |
+
'actions' => array(
|
279 |
+
array(
|
280 |
+
'caption' => Mage::helper('expercash_scoring/data')
|
281 |
+
->__('Delete'),
|
282 |
+
'url' => array(
|
283 |
+
'base' => 'scoring/adminhtml_scoring/delete',
|
284 |
+
'params' => array(
|
285 |
+
'customer_id' =>
|
286 |
+
$customer->getId()
|
287 |
+
)
|
288 |
+
),
|
289 |
+
'field' => 'check_id',
|
290 |
+
)
|
291 |
+
),
|
292 |
+
'filter' => false,
|
293 |
+
'sortable' => false,
|
294 |
+
'index' => 'stores',
|
295 |
+
'is_system' => true,
|
296 |
+
)
|
297 |
+
);
|
298 |
+
|
299 |
+
return parent::_prepareColumns();
|
300 |
+
}
|
301 |
+
}
|
app/code/community/Expercash/Scoring/Block/Adminhtml/Field/Country/Renderer.php
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Block_Adminhtml_Field_Country_Renderer
|
12 |
+
extends Mage_Adminhtml_Block_System_Config_Form_Field
|
13 |
+
{
|
14 |
+
|
15 |
+
protected function _getElementHtml(
|
16 |
+
Varien_Data_Form_Element_Abstract $element
|
17 |
+
)
|
18 |
+
{
|
19 |
+
$element->setDisabled('disabled');
|
20 |
+
|
21 |
+
return parent::_getElementHtml($element);
|
22 |
+
}
|
23 |
+
|
24 |
+
}
|
app/code/community/Expercash/Scoring/Block/Checkout/Onepage/Billing/Agreement.php
ADDED
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ${MODULENAME}
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Block_Checkout_Onepage_Billing_Agreement
|
12 |
+
extends Mage_Checkout_Block_Onepage_Abstract
|
13 |
+
{
|
14 |
+
|
15 |
+
/**
|
16 |
+
* retrieves the config model
|
17 |
+
*
|
18 |
+
* @return Expercash_Scoring_Model_Config
|
19 |
+
*/
|
20 |
+
protected function getConfigModel()
|
21 |
+
{
|
22 |
+
return Mage::getModel('expercash_scoring/config');
|
23 |
+
}
|
24 |
+
|
25 |
+
/**
|
26 |
+
* retrieves the terms and condition text for the current store
|
27 |
+
*
|
28 |
+
* @return string - the terms and conditions text
|
29 |
+
*/
|
30 |
+
public function getTermsAndConditionsText()
|
31 |
+
{
|
32 |
+
return $this->getConfigModel()->getTermsAddition(
|
33 |
+
$this->getQuote()->getStoreId()
|
34 |
+
);
|
35 |
+
}
|
36 |
+
}
|
app/code/community/Expercash/Scoring/Helper/Data.php
ADDED
@@ -0,0 +1,82 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @category Expercash_Scoring
|
4 |
+
* @package Expercash_Scoring
|
5 |
+
* @author Sebastian Ertner <sebastian.ertner@netresearch.de>
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co.KG
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Expercash_Scoring
|
12 |
+
*
|
13 |
+
* @author Sebastian Ertner <sebastian.ertner@netresearch.de>
|
14 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co.KG
|
15 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
16 |
+
*/
|
17 |
+
class Expercash_Scoring_Helper_Data extends Mage_Core_Helper_Abstract
|
18 |
+
{
|
19 |
+
const LOG_FILE_NAME = 'expercash_scoring.log';
|
20 |
+
|
21 |
+
/**
|
22 |
+
* @return Expercash_Scoring_Model_Config
|
23 |
+
*/
|
24 |
+
protected function getConfig()
|
25 |
+
{
|
26 |
+
return Mage::getModel('expercash_scoring/config');
|
27 |
+
}
|
28 |
+
|
29 |
+
/**
|
30 |
+
* Returns first not false value of given params.
|
31 |
+
*
|
32 |
+
* @return mixed
|
33 |
+
*/
|
34 |
+
public function coalesce()
|
35 |
+
{
|
36 |
+
$args = func_get_args();
|
37 |
+
foreach ($args as $arg) {
|
38 |
+
if ($arg) {
|
39 |
+
return $arg;
|
40 |
+
}
|
41 |
+
}
|
42 |
+
return NULL;
|
43 |
+
}
|
44 |
+
|
45 |
+
/**
|
46 |
+
* Checks if logging is enabled and if yes, logs given message to logfile
|
47 |
+
*
|
48 |
+
* @param string $message
|
49 |
+
* @param int $level
|
50 |
+
*/
|
51 |
+
public function log($message, $storeId = null, $level = null)
|
52 |
+
{
|
53 |
+
if ($this->getConfig()->isLoggingEnabled($storeId)) {
|
54 |
+
//Reformat message for better log-visibility
|
55 |
+
if (is_array($message)) {
|
56 |
+
$message = Mage::helper('core/data')->jsonEncode($message);
|
57 |
+
}
|
58 |
+
$message = sprintf(
|
59 |
+
"\n=====================\n%s\n=====================", $message
|
60 |
+
);
|
61 |
+
Mage::log($message, $level, self::LOG_FILE_NAME);
|
62 |
+
}
|
63 |
+
}
|
64 |
+
|
65 |
+
/**
|
66 |
+
* checks if user is registering or not
|
67 |
+
* @return bool true if users is currently registering false otherwise
|
68 |
+
*/
|
69 |
+
public function isUserRegistering()
|
70 |
+
{
|
71 |
+
$isRegistering = false;
|
72 |
+
$checkoutMethod = Mage::getSingleton('checkout/session')->getQuote()->getCheckoutMethod();
|
73 |
+
if ($checkoutMethod === Mage_Sales_Model_Quote::CHECKOUT_METHOD_REGISTER
|
74 |
+
|| $checkoutMethod === Mage_Sales_Model_Quote::CHECKOUT_METHOD_LOGIN_IN
|
75 |
+
)
|
76 |
+
{
|
77 |
+
$isRegistering = true;
|
78 |
+
}
|
79 |
+
return $isRegistering;
|
80 |
+
|
81 |
+
}
|
82 |
+
}
|
app/code/community/Expercash/Scoring/Helper/Request/Params/Adapter.php
ADDED
@@ -0,0 +1,183 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ExperCash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Helper_Request_Params_Adapter
|
12 |
+
{
|
13 |
+
|
14 |
+
/**
|
15 |
+
* retrieves the necessary parameter from the quote
|
16 |
+
*
|
17 |
+
* @param Mage_Sales_Model_Quote $quote
|
18 |
+
*
|
19 |
+
* @return array - the request parameter
|
20 |
+
*/
|
21 |
+
public function convert(Mage_Sales_Model_Quote $quote)
|
22 |
+
{
|
23 |
+
$params = $this->getCommonParams($quote);
|
24 |
+
/** @var $billingAddress Mage_Sales_Model_Quote_Address */
|
25 |
+
$billingAddress = $quote->getBillingAddress();
|
26 |
+
$params['customer_prename'] = $billingAddress->getFirstname();
|
27 |
+
$params['customer_name'] = $billingAddress->getLastname();
|
28 |
+
$streetArray = $this->splitStreet($billingAddress->getStreetFull());
|
29 |
+
$params['customer_address1'] = $streetArray['street_name'];
|
30 |
+
$params['customer_address2'] = $streetArray['street_number'];
|
31 |
+
$params['customer_zip'] = $billingAddress->getPostcode();
|
32 |
+
$params['customer_city'] = $billingAddress->getCity();
|
33 |
+
$params['customer_country'] = $billingAddress->getCountry();
|
34 |
+
$gender = $this->getCustomerGender($quote);
|
35 |
+
if (0 < strlen(trim($gender))) {
|
36 |
+
$params['customer_gender'] = $gender;
|
37 |
+
}
|
38 |
+
$dob = $this->getCustomerDob($quote);
|
39 |
+
if (null !== $dob) {
|
40 |
+
$params['customer_date_of_birth'] = $dob;
|
41 |
+
}
|
42 |
+
return $params;
|
43 |
+
}
|
44 |
+
|
45 |
+
/**
|
46 |
+
* @param Mage_Sales_Model_Quote $quote
|
47 |
+
*
|
48 |
+
* @return array - the common params
|
49 |
+
*/
|
50 |
+
protected function getCommonParams(Mage_Sales_Model_Quote $quote)
|
51 |
+
{
|
52 |
+
$storeId = $quote->getStoreId();
|
53 |
+
$config = $this->getConfigModel();
|
54 |
+
$params = array();
|
55 |
+
$params['pid'] = $config->getProjectId($storeId);
|
56 |
+
$params['pkey'] = $config->getApiKey($storeId);
|
57 |
+
$params['cref'] = date('dmYGis') . '-' . $quote->getId();
|
58 |
+
$params['action'] = 'risk_mgt';
|
59 |
+
|
60 |
+
return $params;
|
61 |
+
}
|
62 |
+
|
63 |
+
/**
|
64 |
+
* @return Expercash_Scoring_Model_Config
|
65 |
+
*/
|
66 |
+
protected function getConfigModel()
|
67 |
+
{
|
68 |
+
return Mage::getModel('expercash_scoring/config');
|
69 |
+
}
|
70 |
+
|
71 |
+
/**
|
72 |
+
* split street into street name, number and care of
|
73 |
+
*
|
74 |
+
* @param string $street
|
75 |
+
*
|
76 |
+
* @return array
|
77 |
+
*/
|
78 |
+
protected function splitStreet($street)
|
79 |
+
{
|
80 |
+
/*
|
81 |
+
* first pattern | street_name | required | ([^0-9]+) | all characters != 0-9
|
82 |
+
* second pattern | additional street value | optional | ([0-9]+[ ])* | numbers + white spaces
|
83 |
+
* ignore | | | [ \t]* | white spaces and tabs
|
84 |
+
* second pattern | street_number | optional | ([0-9]+[-\w^.]+)? | numbers + any word character
|
85 |
+
* ignore | | | [, \t]* | comma, white spaces and tabs
|
86 |
+
* third pattern | care_of | optional | ([^0-9]+.*)? | all characters != 0-9 + any character except newline
|
87 |
+
*/
|
88 |
+
if (preg_match(
|
89 |
+
"/^([^0-9]+)([0-9]+[ ])*[ \t]*([0-9]*[-\w^.]*)?[, \t]*([^0-9]+.*)?\$/",
|
90 |
+
$street, $matches
|
91 |
+
)
|
92 |
+
) {
|
93 |
+
|
94 |
+
//check if street has additional value and add it to streetname
|
95 |
+
if (preg_match("/^([0-9]+)?\$/", trim($matches[2]))) {
|
96 |
+
$matches[1] = $matches[1] . $matches[2];
|
97 |
+
|
98 |
+
}
|
99 |
+
return array(
|
100 |
+
'street_name' => trim($matches[1]),
|
101 |
+
'street_number' => isset($matches[3]) ? $matches[3] : '',
|
102 |
+
);
|
103 |
+
}
|
104 |
+
return array(
|
105 |
+
'street_name' => $street,
|
106 |
+
'street_number' => '',
|
107 |
+
);
|
108 |
+
}
|
109 |
+
|
110 |
+
/**
|
111 |
+
* Tries to guess customers gender in expercash required form (f || m)
|
112 |
+
*
|
113 |
+
* @param Mage_Sales_Model_Quote $quote
|
114 |
+
*
|
115 |
+
* @return string
|
116 |
+
*/
|
117 |
+
protected function getCustomerGender(Mage_Sales_Model_Quote $quote)
|
118 |
+
{
|
119 |
+
$result = '';
|
120 |
+
$prefix = strtolower(
|
121 |
+
Mage::helper('expercash_scoring/data')->coalesce(
|
122 |
+
$this->getGenderText($quote->getBillingAddress(), 'gender'),
|
123 |
+
$this->getGenderText($quote, 'customer_gender'),
|
124 |
+
$this->getGenderText($quote->getCustomer(), 'gender'),
|
125 |
+
$quote->getBillingAddress()->getPrefix(),
|
126 |
+
$quote->getCustomerPrefix(),
|
127 |
+
$quote->getCustomer()->getPrefix()
|
128 |
+
)
|
129 |
+
);
|
130 |
+
if (0 < strlen(trim($prefix))) {
|
131 |
+
$result = 'm';
|
132 |
+
if (in_array(
|
133 |
+
$prefix,
|
134 |
+
array('mrs.', 'mrs', 'frau', 'fr.', 'fr', 'fräulein',
|
135 |
+
'frau dr.',
|
136 |
+
'female')
|
137 |
+
)
|
138 |
+
) {
|
139 |
+
$result = 'f';
|
140 |
+
}
|
141 |
+
}
|
142 |
+
return $result;
|
143 |
+
}
|
144 |
+
|
145 |
+
/**
|
146 |
+
* Retrive text of gender attribute of given entity.
|
147 |
+
*
|
148 |
+
* @param Mage_Core_Model_Abstract $entity
|
149 |
+
* @param string $attributeCode
|
150 |
+
*
|
151 |
+
* @return string
|
152 |
+
*/
|
153 |
+
protected function getGenderText($entity, $attributeCode)
|
154 |
+
{
|
155 |
+
return Mage::getSingleton('eav/config')
|
156 |
+
->getAttribute('customer', 'gender')
|
157 |
+
->getSource()
|
158 |
+
->getOptionText($entity->getData($attributeCode));
|
159 |
+
}
|
160 |
+
|
161 |
+
/**
|
162 |
+
* Get formated date of birth of customer, if not set return null.
|
163 |
+
*
|
164 |
+
* @param Mage_Sales_Model_Quote $quote
|
165 |
+
*
|
166 |
+
* @return string - the dob of the customer or null if none is set
|
167 |
+
*/
|
168 |
+
protected function getCustomerDob(Mage_Sales_Model_Quote $quote)
|
169 |
+
{
|
170 |
+
$dob = null;
|
171 |
+
$dob = $quote->getCustomerDob();
|
172 |
+
if (!$dob) {
|
173 |
+
/** @var $customer Mage_Customer_Model_Customer */
|
174 |
+
$customer = $quote->getCustomer();
|
175 |
+
if (!$customer || !$customer->getDob()) {
|
176 |
+
return null;
|
177 |
+
}
|
178 |
+
$dob = $customer->getDob();
|
179 |
+
}
|
180 |
+
$date = new Zend_Date(strtotime($dob));
|
181 |
+
return $date->get('yyyyMMdd');
|
182 |
+
}
|
183 |
+
}
|
app/code/community/Expercash/Scoring/Model/Checkout/Payment/Methods/Filter.php
ADDED
@@ -0,0 +1,106 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Model_Checkout_Payment_Methods_Filter
|
12 |
+
{
|
13 |
+
|
14 |
+
/**
|
15 |
+
* @return Expercash_Scoring_Model_System_Config_Source_Scoring_Value
|
16 |
+
*/
|
17 |
+
protected function getScoringValueModel()
|
18 |
+
{
|
19 |
+
return Mage::getModel(
|
20 |
+
'expercash_scoring/system_config_source_scoring_value'
|
21 |
+
);
|
22 |
+
}
|
23 |
+
|
24 |
+
/**
|
25 |
+
* @return Expercash_Scoring_Model_Config
|
26 |
+
*/
|
27 |
+
protected function getConfigModel()
|
28 |
+
{
|
29 |
+
return Mage::getModel('expercash_scoring/config');
|
30 |
+
}
|
31 |
+
|
32 |
+
/**
|
33 |
+
* retrieves the allowed payment methods for given scoring value
|
34 |
+
*
|
35 |
+
* @param string $scoringValue
|
36 |
+
* @param null $storeId
|
37 |
+
*
|
38 |
+
* @return array - empty array if the given scoring value is not valid,
|
39 |
+
* otherwise an array with the allowed payment methods
|
40 |
+
*/
|
41 |
+
protected function getMethodsForScoringValue($scoringValue, $storeId = null)
|
42 |
+
{
|
43 |
+
$filteredMethods = array();
|
44 |
+
if ($scoringValue
|
45 |
+
=== Expercash_Scoring_Model_System_Config_Source_Scoring_Value::RED_VALUE
|
46 |
+
) {
|
47 |
+
$filteredMethods = $this->getConfigModel()
|
48 |
+
->getAllowedPaymentMethodsForScoringValueRed($storeId);
|
49 |
+
}
|
50 |
+
if ($scoringValue
|
51 |
+
=== Expercash_Scoring_Model_System_Config_Source_Scoring_Value::YELLOW_VALUE
|
52 |
+
) {
|
53 |
+
$filteredMethods = $this->getConfigModel()
|
54 |
+
->getAllowedPaymentMethodsForScoringValueYellow($storeId);
|
55 |
+
}
|
56 |
+
if ($scoringValue
|
57 |
+
=== Expercash_Scoring_Model_System_Config_Source_Scoring_Value::GREEN_VALUE
|
58 |
+
) {
|
59 |
+
$filteredMethods = $this->getConfigModel()
|
60 |
+
->getAllowedPaymentMethodsForScoringValueGreen($storeId);
|
61 |
+
}
|
62 |
+
if ($scoringValue
|
63 |
+
=== Expercash_Scoring_Model_System_Config_Source_Scoring_Value::NO_TERMS_AND_CONDITIONS_VALUE
|
64 |
+
) {
|
65 |
+
$filteredMethods = $this->getConfigModel()
|
66 |
+
->getAlwaysOfferTheFollowingPaymentMethods($storeId);
|
67 |
+
}
|
68 |
+
return $filteredMethods;
|
69 |
+
}
|
70 |
+
|
71 |
+
/**
|
72 |
+
* filters the payment methods for a given scoring value
|
73 |
+
*
|
74 |
+
* @param Mage_Sales_Model_Quote $quote
|
75 |
+
* @param array $paymentMethods
|
76 |
+
* @param $scoringValue
|
77 |
+
*
|
78 |
+
* @return array
|
79 |
+
*/
|
80 |
+
public function filterPaymentMethods(
|
81 |
+
Mage_Sales_Model_Quote $quote, array $paymentMethods, $scoringValue
|
82 |
+
)
|
83 |
+
{
|
84 |
+
if (null === $scoringValue
|
85 |
+
|| !in_array(
|
86 |
+
$scoringValue, $this->getScoringValueModel()->validValues()
|
87 |
+
)
|
88 |
+
) {
|
89 |
+
return $paymentMethods;
|
90 |
+
}
|
91 |
+
if (0 === count($paymentMethods)) {
|
92 |
+
return $paymentMethods;
|
93 |
+
}
|
94 |
+
$allowPaymentMeths = $this->getMethodsForScoringValue(
|
95 |
+
$scoringValue, $quote->getStoreId()
|
96 |
+
);
|
97 |
+
|
98 |
+
foreach ($paymentMethods as $key => $method) {
|
99 |
+
if (!in_array($method->getCode(), $allowPaymentMeths)) {
|
100 |
+
unset($paymentMethods[$key]);
|
101 |
+
}
|
102 |
+
}
|
103 |
+
return $paymentMethods;
|
104 |
+
}
|
105 |
+
|
106 |
+
}
|
app/code/community/Expercash/Scoring/Model/Config.php
ADDED
@@ -0,0 +1,512 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
class Expercash_Scoring_Model_Config
|
11 |
+
{
|
12 |
+
|
13 |
+
const SCORING_PATH = 'expercash_scoring';
|
14 |
+
|
15 |
+
const GENERAL_PATH = 'general';
|
16 |
+
|
17 |
+
const SOLVENCY_PATH = 'solvency';
|
18 |
+
|
19 |
+
const RE_REQUEST_PATH = 're-request';
|
20 |
+
|
21 |
+
const SCORING_VALUE_RED_PATH = 'scoring-value-red';
|
22 |
+
|
23 |
+
const SCORING_VALUE_YELLOW_PATH = 'scoring-value-yellow';
|
24 |
+
|
25 |
+
const SCORING_VALUE_GREEN_PATH = 'scoring-value-green';
|
26 |
+
|
27 |
+
/**
|
28 |
+
* @param string $path - the path which stores the config data
|
29 |
+
* @param null $storeId - the storeId we want the config data for
|
30 |
+
*
|
31 |
+
* @return bool|mixed - false if path does not exist, the corresponding
|
32 |
+
* value otherwise
|
33 |
+
*/
|
34 |
+
protected function getConfigData($path, $storeId = null)
|
35 |
+
{
|
36 |
+
if (!empty($path)) {
|
37 |
+
return Mage::getStoreConfig($path, $storeId);
|
38 |
+
}
|
39 |
+
return false;
|
40 |
+
}
|
41 |
+
|
42 |
+
/**
|
43 |
+
* retrieves the config value for a given field from the general group
|
44 |
+
*
|
45 |
+
* @param $fieldName - the field which value we want to retrieve
|
46 |
+
* @param $storeId - the store we want the value for
|
47 |
+
*
|
48 |
+
* @return bool|mixed - false if path is empty or does not exists,
|
49 |
+
* the corresponding value otherwise
|
50 |
+
*/
|
51 |
+
protected function getConfigDataFromGeneralGroup($fieldName, $storeId)
|
52 |
+
{
|
53 |
+
if (empty($fieldName)) {
|
54 |
+
return false;
|
55 |
+
}
|
56 |
+
$path
|
57 |
+
= self::SCORING_PATH . '/' . self::GENERAL_PATH . '/' . $fieldName;
|
58 |
+
return $this->getConfigData($path, $storeId);
|
59 |
+
}
|
60 |
+
|
61 |
+
/**
|
62 |
+
* retrieves the config value for a given field from the solvency group
|
63 |
+
*
|
64 |
+
* @param $fieldName - the field which value we want to retrieve
|
65 |
+
* @param $storeId - the store we want the value for
|
66 |
+
*
|
67 |
+
* @return bool|mixed - false if path is empty or does not exists,
|
68 |
+
* the corresponding value otherwise
|
69 |
+
*/
|
70 |
+
protected function getConfigDataFromSolvencyGroup($fieldName, $storeId)
|
71 |
+
{
|
72 |
+
if (empty($fieldName)) {
|
73 |
+
return false;
|
74 |
+
}
|
75 |
+
$path
|
76 |
+
= self::SCORING_PATH . '/' . self::SOLVENCY_PATH . '/' . $fieldName;
|
77 |
+
return $this->getConfigData($path, $storeId);
|
78 |
+
}
|
79 |
+
|
80 |
+
/**
|
81 |
+
* retrieves the config value for a given field from the re-request group
|
82 |
+
*
|
83 |
+
* @param $fieldName - the field which value we want to retrieve
|
84 |
+
* @param $storeId - the store we want the value for
|
85 |
+
*
|
86 |
+
* @return bool|mixed - false if path is empty or does not exists,
|
87 |
+
* the corresponding value otherwise
|
88 |
+
*/
|
89 |
+
protected function getConfigDataFromReRequestGroup($fieldName, $storeId)
|
90 |
+
{
|
91 |
+
if (empty($fieldName)) {
|
92 |
+
return false;
|
93 |
+
}
|
94 |
+
$path
|
95 |
+
=
|
96 |
+
self::SCORING_PATH . '/' . self::RE_REQUEST_PATH . '/' . $fieldName;
|
97 |
+
return $this->getConfigData($path, $storeId);
|
98 |
+
}
|
99 |
+
|
100 |
+
/**
|
101 |
+
* retrieves the config value for a given field from the scoring value red
|
102 |
+
* group
|
103 |
+
*
|
104 |
+
* @param $fieldName - the field which value we want to retrieve
|
105 |
+
* @param $storeId - the store we want the value for
|
106 |
+
*
|
107 |
+
* @return bool|mixed - false if path is empty or does not exists,
|
108 |
+
* the corresponding value otherwise
|
109 |
+
*/
|
110 |
+
protected function getConfigDataFromScoringValueRedGroup(
|
111 |
+
$fieldName, $storeId
|
112 |
+
)
|
113 |
+
{
|
114 |
+
if (empty($fieldName)) {
|
115 |
+
return false;
|
116 |
+
}
|
117 |
+
$path = self::SCORING_PATH . '/' . self::SCORING_VALUE_RED_PATH .
|
118 |
+
'/' . $fieldName;
|
119 |
+
return $this->getConfigData($path, $storeId);
|
120 |
+
}
|
121 |
+
|
122 |
+
/**
|
123 |
+
* retrieves the config value for a given field from the scoring value
|
124 |
+
* yellow group
|
125 |
+
*
|
126 |
+
* @param $fieldName - the field which value we want to retrieve
|
127 |
+
* @param $storeId - the store we want the value for
|
128 |
+
*
|
129 |
+
* @return bool|mixed - false if path is empty or does not exists,
|
130 |
+
* the corresponding value otherwise
|
131 |
+
*/
|
132 |
+
protected function getConfigDataFromScoringValueYellowGroup(
|
133 |
+
$fieldName, $storeId
|
134 |
+
)
|
135 |
+
{
|
136 |
+
if (empty($fieldName)) {
|
137 |
+
return false;
|
138 |
+
}
|
139 |
+
$path = self::SCORING_PATH . '/' . self::SCORING_VALUE_YELLOW_PATH .
|
140 |
+
'/' . $fieldName;
|
141 |
+
return $this->getConfigData($path, $storeId);
|
142 |
+
}
|
143 |
+
|
144 |
+
/**
|
145 |
+
* retrieves the config value for a given field from the scoring value green
|
146 |
+
* group
|
147 |
+
*
|
148 |
+
* @param $fieldName - the field which value we want to retrieve
|
149 |
+
* @param $storeId - the store we want the value for
|
150 |
+
*
|
151 |
+
* @return bool|mixed - false if path is empty or does not exists,
|
152 |
+
* the corresponding value otherwise
|
153 |
+
*/
|
154 |
+
protected function getConfigDataFromScoringValueGreenGroup(
|
155 |
+
$fieldName, $storeId
|
156 |
+
)
|
157 |
+
{
|
158 |
+
if (empty($fieldName)) {
|
159 |
+
return false;
|
160 |
+
}
|
161 |
+
$path = self::SCORING_PATH . '/' . self::SCORING_VALUE_GREEN_PATH .
|
162 |
+
'/' . $fieldName;
|
163 |
+
return $this->getConfigData($path, $storeId);
|
164 |
+
}
|
165 |
+
|
166 |
+
/**
|
167 |
+
* retrieves if the module is active for a given store
|
168 |
+
*
|
169 |
+
* @param null $storeId - specifies the store we want to retrieve the value
|
170 |
+
* for
|
171 |
+
*
|
172 |
+
* @return bool - true if the module is activated, false otherwise
|
173 |
+
*/
|
174 |
+
public function isActive($storeId = null)
|
175 |
+
{
|
176 |
+
return (bool)$this->getConfigDataFromGeneralGroup('active', $storeId);
|
177 |
+
}
|
178 |
+
|
179 |
+
/**
|
180 |
+
* retrieves the project id for a given store
|
181 |
+
*
|
182 |
+
* @param null $storeId - specifies the store we want to retrieve the value
|
183 |
+
* for
|
184 |
+
*
|
185 |
+
* @return string|bool string if the path exists, false otherwise
|
186 |
+
*/
|
187 |
+
public function getProjectId($storeId = null)
|
188 |
+
{
|
189 |
+
return $this->getConfigDataFromGeneralGroup('projectid', $storeId);
|
190 |
+
}
|
191 |
+
|
192 |
+
/**
|
193 |
+
* retrieves the api key for a given store
|
194 |
+
*
|
195 |
+
* @param null $storeId - specifies the store we want to retrieve the value
|
196 |
+
* for
|
197 |
+
*
|
198 |
+
* @return string|bool string if the path exists, false otherwise
|
199 |
+
*/
|
200 |
+
public function getApiKey($storeId = null)
|
201 |
+
{
|
202 |
+
return $this->getConfigDataFromGeneralGroup('apikey', $storeId);
|
203 |
+
}
|
204 |
+
|
205 |
+
/**
|
206 |
+
* retrieves the terms addition for a given store
|
207 |
+
*
|
208 |
+
* @param null $storeId - specifies the store we want to retrieve the value
|
209 |
+
* for
|
210 |
+
*
|
211 |
+
* @return string|bool string if the path exists, false otherwise
|
212 |
+
*/
|
213 |
+
public function getTermsAddition($storeId = null)
|
214 |
+
{
|
215 |
+
return $this->getConfigDataFromGeneralGroup('terms-addition', $storeId);
|
216 |
+
}
|
217 |
+
|
218 |
+
/**
|
219 |
+
* retrieves the for a given store
|
220 |
+
*
|
221 |
+
* @param null $storeId - specifies the store we want to retrieve the value
|
222 |
+
* for
|
223 |
+
*
|
224 |
+
* @return string|bool string if the path exists, false otherwise
|
225 |
+
*/
|
226 |
+
public function getTotalMin($storeId = null)
|
227 |
+
{
|
228 |
+
return $this->getConfigDataFromSolvencyGroup('total-min', $storeId);
|
229 |
+
}
|
230 |
+
|
231 |
+
/**
|
232 |
+
* retrieves the customer groups the check is skipped for a given store
|
233 |
+
*
|
234 |
+
* @param null $storeId - specifies the store we want to retrieve the value
|
235 |
+
* for
|
236 |
+
*
|
237 |
+
* @return array|bool - array if the path exists, false otherwise
|
238 |
+
*/
|
239 |
+
public function getSkipForCustomerGroups($storeId = null)
|
240 |
+
{
|
241 |
+
return unserialize(
|
242 |
+
$this->getConfigDataFromSolvencyGroup(
|
243 |
+
'skip-for-customer-groups', $storeId
|
244 |
+
)
|
245 |
+
);
|
246 |
+
}
|
247 |
+
|
248 |
+
/**
|
249 |
+
* retrieves the the default scoring value if the check returns no data
|
250 |
+
*
|
251 |
+
* @param null $storeId - specifies the store we want to retrieve the value
|
252 |
+
* for
|
253 |
+
*
|
254 |
+
* @return int|bool - int if the path exists, false otherwise
|
255 |
+
*/
|
256 |
+
public function getDefaultScoringIfNoDataReturned($storeId = null)
|
257 |
+
{
|
258 |
+
return $this->getConfigDataFromSolvencyGroup(
|
259 |
+
'default-scoring-if-no-data-returned', $storeId
|
260 |
+
);
|
261 |
+
}
|
262 |
+
|
263 |
+
/**
|
264 |
+
* retrieves the the number of checks which are allowed per session
|
265 |
+
*
|
266 |
+
* @param null $storeId - specifies the store we want to retrieve the value
|
267 |
+
* for
|
268 |
+
*
|
269 |
+
* @return int|bool - array if the path exists, false otherwise
|
270 |
+
*/
|
271 |
+
public function getMaxNumberOfChecksPerSession($storeId = null)
|
272 |
+
{
|
273 |
+
return $this->getConfigDataFromReRequestGroup(
|
274 |
+
'max-number-of-checks-per-session', $storeId
|
275 |
+
);
|
276 |
+
}
|
277 |
+
|
278 |
+
/**
|
279 |
+
* retrieves the default scoring value if the count per session is exceeded
|
280 |
+
*
|
281 |
+
* @param null $storeId - specifies the store we want to retrieve the value
|
282 |
+
* for
|
283 |
+
*
|
284 |
+
* @return int|bool - array if the path exists, false otherwise
|
285 |
+
*/
|
286 |
+
public function getDefaultScoringForSessionCount($storeId = null)
|
287 |
+
{
|
288 |
+
return $this->getConfigDataFromReRequestGroup(
|
289 |
+
'default-scoring-for-session-count', $storeId
|
290 |
+
);
|
291 |
+
}
|
292 |
+
|
293 |
+
/**
|
294 |
+
* retrieves the the number of checks which are allowed per day
|
295 |
+
*
|
296 |
+
* @param null $storeId - specifies the store we want to retrieve the value
|
297 |
+
* for
|
298 |
+
*
|
299 |
+
* @return int|bool - array if the path exists, false otherwise
|
300 |
+
*/
|
301 |
+
public function getMaxNumberOfChecksPerDay($storeId = null)
|
302 |
+
{
|
303 |
+
return $this->getConfigDataFromReRequestGroup(
|
304 |
+
'max-number-of-checks-per-day', $storeId
|
305 |
+
);
|
306 |
+
}
|
307 |
+
|
308 |
+
/**
|
309 |
+
* retrieves the default scoring value if the count per day is exceeded
|
310 |
+
*
|
311 |
+
* @param null $storeId - specifies the store we want to retrieve the value
|
312 |
+
* for
|
313 |
+
*
|
314 |
+
* @return int|bool - array if the path exists, false otherwise
|
315 |
+
*/
|
316 |
+
public function getDefaultScoringForDayCount($storeId = null)
|
317 |
+
{
|
318 |
+
return $this->getConfigDataFromReRequestGroup(
|
319 |
+
'default-scoring-for-day-count', $storeId
|
320 |
+
);
|
321 |
+
}
|
322 |
+
|
323 |
+
/**
|
324 |
+
* determines if the scoring value expires after X days
|
325 |
+
*
|
326 |
+
* @param null $storeId - the store id we want to retrieve the value for it
|
327 |
+
*
|
328 |
+
* @return bool - true if the setting is set, false otherwise
|
329 |
+
*/
|
330 |
+
public function isScoringExpiringAfterDays($storeId = null)
|
331 |
+
{
|
332 |
+
return (bool)$this->getConfigDataFromReRequestGroup(
|
333 |
+
'scoring-expiring-after-days', $storeId
|
334 |
+
);
|
335 |
+
}
|
336 |
+
|
337 |
+
/**
|
338 |
+
* determines if the scoring check needs to be repeated after X days
|
339 |
+
*
|
340 |
+
* @param null $storeId - the store id we want to retrieve the value for it
|
341 |
+
*
|
342 |
+
* @return int|null - the number of days the scoring value needs to be
|
343 |
+
* refreshed, null if not configured yet
|
344 |
+
*/
|
345 |
+
public function getScoringRepeatAfterDays($storeId = null)
|
346 |
+
{
|
347 |
+
if (false === $this->isScoringExpiringAfterDays($storeId)) {
|
348 |
+
return null;
|
349 |
+
}
|
350 |
+
return $this->getConfigDataFromReRequestGroup(
|
351 |
+
'scoring-repeat-after-days', $storeId
|
352 |
+
);
|
353 |
+
}
|
354 |
+
|
355 |
+
/**
|
356 |
+
* retrieves the allowed payment methods for scoring value red
|
357 |
+
*
|
358 |
+
* @param $storeId
|
359 |
+
*
|
360 |
+
* @return array
|
361 |
+
*/
|
362 |
+
public function getAllowedPaymentMethodsForScoringValueRed($storeId = null)
|
363 |
+
{
|
364 |
+
$redValues = unserialize(
|
365 |
+
$this->getConfigDataFromScoringValueRedGroup(
|
366 |
+
'allowed-payment-methods', $storeId
|
367 |
+
)
|
368 |
+
);
|
369 |
+
if (false === $redValues) {
|
370 |
+
$redValues = array();
|
371 |
+
}
|
372 |
+
$redValues = array_merge(
|
373 |
+
$redValues,
|
374 |
+
$this->getAlwaysOfferTheFollowingPaymentMethods($storeId)
|
375 |
+
);
|
376 |
+
return $redValues;
|
377 |
+
}
|
378 |
+
|
379 |
+
/**
|
380 |
+
* retrieves the allowed payment methods for scoring value yellow
|
381 |
+
*
|
382 |
+
* @param $storeId
|
383 |
+
*
|
384 |
+
* @return array
|
385 |
+
*/
|
386 |
+
public function getAllowedPaymentMethodsForScoringValueYellow(
|
387 |
+
$storeId = null
|
388 |
+
)
|
389 |
+
{
|
390 |
+
$yellowValues = unserialize(
|
391 |
+
$this->getConfigDataFromScoringValueYellowGroup(
|
392 |
+
'allowed-payment-methods', $storeId
|
393 |
+
)
|
394 |
+
);
|
395 |
+
if (false === $yellowValues) {
|
396 |
+
$yellowValues = array();
|
397 |
+
}
|
398 |
+
$yellowValues = array_merge(
|
399 |
+
$yellowValues,
|
400 |
+
$this->getAlwaysOfferTheFollowingPaymentMethods($storeId)
|
401 |
+
);
|
402 |
+
return $yellowValues;
|
403 |
+
}
|
404 |
+
|
405 |
+
/**
|
406 |
+
* retrieves the allowed payment methods for scoring value green
|
407 |
+
*
|
408 |
+
* @param $storeId
|
409 |
+
*
|
410 |
+
* @return array
|
411 |
+
*/
|
412 |
+
public function getAllowedPaymentMethodsForScoringValueGreen(
|
413 |
+
$storeId = null
|
414 |
+
)
|
415 |
+
{
|
416 |
+
$greenValues = unserialize(
|
417 |
+
$this->getConfigDataFromScoringValueGreenGroup(
|
418 |
+
'allowed-payment-methods', $storeId
|
419 |
+
)
|
420 |
+
);
|
421 |
+
if (false === $greenValues) {
|
422 |
+
$greenValues = array();
|
423 |
+
}
|
424 |
+
$greenValues = array_merge(
|
425 |
+
$greenValues,
|
426 |
+
$this->getAlwaysOfferTheFollowingPaymentMethods($storeId)
|
427 |
+
);
|
428 |
+
return $greenValues;
|
429 |
+
}
|
430 |
+
|
431 |
+
/**
|
432 |
+
* retrieves the additional condition for the green scoring value
|
433 |
+
*
|
434 |
+
* @param null $storeId
|
435 |
+
*/
|
436 |
+
public function getAdditionalConditionForScoringValueGreen($storeId = null)
|
437 |
+
{
|
438 |
+
return $this->getConfigDataFromScoringValueGreenGroup(
|
439 |
+
'additional-condition', $storeId
|
440 |
+
);
|
441 |
+
}
|
442 |
+
|
443 |
+
/**
|
444 |
+
* retrieves the additional condition for the yellow scoring value
|
445 |
+
*
|
446 |
+
* @param null $storeId
|
447 |
+
*/
|
448 |
+
public function getAdditionalConditionForScoringValueYellow($storeId = null)
|
449 |
+
{
|
450 |
+
return $this->getConfigDataFromScoringValueYellowGroup(
|
451 |
+
'additional-condition', $storeId
|
452 |
+
);
|
453 |
+
}
|
454 |
+
|
455 |
+
/**
|
456 |
+
* @param int $storeId - the store id we eanto to retrieve the allowed
|
457 |
+
* countries for
|
458 |
+
*
|
459 |
+
* @return array - the list of all allowed countries
|
460 |
+
*/
|
461 |
+
public function getAllowedCountries($storeId = null)
|
462 |
+
{
|
463 |
+
/*
|
464 |
+
return unserialize(
|
465 |
+
$this->getConfigDataFromGeneralGroup('allowed-country', $storeId)
|
466 |
+
);
|
467 |
+
*/
|
468 |
+
return array('DE');
|
469 |
+
}
|
470 |
+
|
471 |
+
/**
|
472 |
+
* get the epi url from the config.xml
|
473 |
+
*
|
474 |
+
* @return string
|
475 |
+
*/
|
476 |
+
public function getEpiUrl($storeId = null)
|
477 |
+
{
|
478 |
+
return $this->getConfigDataFromGeneralGroup('epi-url', $storeId);
|
479 |
+
}
|
480 |
+
|
481 |
+
/**
|
482 |
+
* checks if logging is enabled or not
|
483 |
+
*
|
484 |
+
* @param null $storeId
|
485 |
+
*
|
486 |
+
* @return bool true if logging is enabled, false otherwise
|
487 |
+
*/
|
488 |
+
public function isLoggingEnabled($storeId = null)
|
489 |
+
{
|
490 |
+
return (bool)$this->getConfigDataFromGeneralGroup(
|
491 |
+
'logging-enabled', $storeId
|
492 |
+
);
|
493 |
+
}
|
494 |
+
|
495 |
+
/**
|
496 |
+
* @param int $storeId - the store id for the config
|
497 |
+
*
|
498 |
+
* @return mixed
|
499 |
+
*/
|
500 |
+
public function getAlwaysOfferTheFollowingPaymentMethods($storeId = null)
|
501 |
+
{
|
502 |
+
$defaultPaymentMethods = unserialize(
|
503 |
+
$this->getConfigDataFromSolvencyGroup(
|
504 |
+
'always-offer-the-following-payment-methods', $storeId
|
505 |
+
)
|
506 |
+
);
|
507 |
+
if (false === $defaultPaymentMethods) {
|
508 |
+
$defaultPaymentMethods = array();
|
509 |
+
}
|
510 |
+
return $defaultPaymentMethods;
|
511 |
+
}
|
512 |
+
}
|
app/code/community/Expercash/Scoring/Model/Mysql4/Solvency/Check/Result.php
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Model_Mysql4_Solvency_Check_Result
|
12 |
+
extends Mage_Core_Model_Mysql4_Abstract
|
13 |
+
{
|
14 |
+
|
15 |
+
/**
|
16 |
+
* Constructor
|
17 |
+
*
|
18 |
+
* @see lib/Varien/Varien_Object#_construct()
|
19 |
+
* @return Expercash_Scoring_Model_Resource_Solvency_Check_Result
|
20 |
+
*/
|
21 |
+
protected function _construct()
|
22 |
+
{
|
23 |
+
$this->_init('expercash_scoring/solvency_check_result', 'check_id');
|
24 |
+
}
|
25 |
+
}
|
app/code/community/Expercash/Scoring/Model/Mysql4/Solvency/Check/Result/Collection.php
ADDED
@@ -0,0 +1,100 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Model_Mysql4_Solvency_Check_Result_Collection
|
12 |
+
extends Mage_Core_Model_Mysql4_Collection_Abstract
|
13 |
+
{
|
14 |
+
|
15 |
+
protected function _construct()
|
16 |
+
{
|
17 |
+
parent::_construct();
|
18 |
+
$this->_init('expercash_scoring/solvency_check_result');
|
19 |
+
}
|
20 |
+
|
21 |
+
/**
|
22 |
+
* retrieves the count of the performed checks for the current day
|
23 |
+
*
|
24 |
+
* @return int the count of the performed checks for the current day
|
25 |
+
*/
|
26 |
+
public function getEntriesForCurrentDay()
|
27 |
+
{
|
28 |
+
$this->getSelect()->columns('COUNT(check_id) AS cnt_check_id');
|
29 |
+
$this->addFieldToFilter(
|
30 |
+
new Zend_Db_Expr('DATE(created_at)'),
|
31 |
+
array('eq' => new Zend_Db_Expr('CURDATE()'))
|
32 |
+
);
|
33 |
+
|
34 |
+
return $this->load()->getFirstItem()->getCntCheckId();
|
35 |
+
}
|
36 |
+
|
37 |
+
/**
|
38 |
+
* retrieves the last scoring vlaue for an existing customer which
|
39 |
+
* was placed during the last x days
|
40 |
+
*
|
41 |
+
* @param Mage_Sales_Model_Quote $quote
|
42 |
+
* @param Expercash_Scoring_Model_Config $config
|
43 |
+
*
|
44 |
+
* @return null - null if no value could be found, the last value otherwise
|
45 |
+
*/
|
46 |
+
public function getLastEntryFromTheLastDays(
|
47 |
+
Mage_Sales_Model_Quote $quote, Expercash_Scoring_Model_Config $config
|
48 |
+
)
|
49 |
+
{
|
50 |
+
$scoringValue = null;
|
51 |
+
// perform this check only for existing / logged in customer
|
52 |
+
if ($quote->getCustomer() && 0 < $quote->getCustomer()->getId()
|
53 |
+
&& $config->isScoringExpiringAfterDays($quote->getStoreId())
|
54 |
+
) {
|
55 |
+
$daysInPast = $config->getScoringRepeatAfterDays(
|
56 |
+
$quote->getStoreId()
|
57 |
+
);
|
58 |
+
|
59 |
+
// perform the check only if a valid days in past value is found
|
60 |
+
if (is_numeric($daysInPast) && 0 < $daysInPast) {
|
61 |
+
$expr = sprintf(
|
62 |
+
'DATE_SUB(CURDATE(),INTERVAL %d DAY)', $daysInPast
|
63 |
+
);
|
64 |
+
$this->addFieldToFilter(
|
65 |
+
'customer_id', array('eq' => $quote->getCustomer()->getId())
|
66 |
+
);
|
67 |
+
$this->addFieldToFilter(
|
68 |
+
new Zend_Db_Expr('DATE(created_at)'),
|
69 |
+
array('gteq' => new Zend_Db_Expr($expr))
|
70 |
+
);
|
71 |
+
$this->setOrder('created_at', self::SORT_ORDER_DESC);
|
72 |
+
$this->setPageSize(1);
|
73 |
+
$scoringValue = $this->load()->getFirstItem()->getEscore();
|
74 |
+
}
|
75 |
+
}
|
76 |
+
|
77 |
+
return $scoringValue;
|
78 |
+
}
|
79 |
+
|
80 |
+
/**
|
81 |
+
* deletes entries for a given customer from the scoring result table
|
82 |
+
*
|
83 |
+
* @param $customerId - the customer id we want to delete the scoring
|
84 |
+
* information
|
85 |
+
* @param null $entryId - optional an entry id for a specific result to
|
86 |
+
* delete
|
87 |
+
*/
|
88 |
+
public function deleteForCustomer($customerId, $entryId = null)
|
89 |
+
{
|
90 |
+
if (is_numeric($customerId) && 0 < $customerId) {
|
91 |
+
$this->addFieldToFilter('customer_id', array('eq' => $customerId));
|
92 |
+
if (null !== $entryId && is_numeric($entryId) && 0 < $entryId) {
|
93 |
+
$this->addFieldToFilter('check_id', array('eq' => $entryId));
|
94 |
+
}
|
95 |
+
foreach ($this->load() as $entry) {
|
96 |
+
$entry->delete();
|
97 |
+
}
|
98 |
+
}
|
99 |
+
}
|
100 |
+
}
|
app/code/community/Expercash/Scoring/Model/Observer.php
ADDED
@@ -0,0 +1,153 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Model_Observer
|
12 |
+
{
|
13 |
+
|
14 |
+
/**
|
15 |
+
* @return Expercash_Scoring_Model_Config
|
16 |
+
*/
|
17 |
+
protected function getConfigModel()
|
18 |
+
{
|
19 |
+
return Mage::getModel('expercash_scoring/config');
|
20 |
+
}
|
21 |
+
|
22 |
+
/**
|
23 |
+
* @return Expercash_Scoring_Model_Solvency_Check_Result
|
24 |
+
*/
|
25 |
+
protected function getResultModel()
|
26 |
+
{
|
27 |
+
return Mage::getModel('expercash_scoring/solvency_check_result');
|
28 |
+
}
|
29 |
+
|
30 |
+
/**
|
31 |
+
* Append the solvency confirmation checkbox to billing address
|
32 |
+
*
|
33 |
+
* @param $observer
|
34 |
+
*
|
35 |
+
* @return void
|
36 |
+
*/
|
37 |
+
public function appendAgreementToBilling($observer)
|
38 |
+
{
|
39 |
+
if (
|
40 |
+
$observer->getBlock() instanceof Mage_Checkout_Block_Onepage_Billing
|
41 |
+
&& false === $observer->getBlock() instanceof
|
42 |
+
Mage_Paypal_Block_Express_Review_Billing
|
43 |
+
) {
|
44 |
+
|
45 |
+
$transport = $observer->getTransport();
|
46 |
+
$block = $observer->getBlock();
|
47 |
+
$quote = $block->getQuote();
|
48 |
+
$configModel = $this->getConfigModel();
|
49 |
+
if ($this->getConfigModel()->isActive(
|
50 |
+
$quote->getStoreId()
|
51 |
+
)
|
52 |
+
&& null === $this->getResultModel()->getCollection()
|
53 |
+
->getLastEntryFromTheLastDays($quote, $configModel)
|
54 |
+
) {
|
55 |
+
$layout = $block->getLayout();
|
56 |
+
$html = $transport->getHtml();
|
57 |
+
$solvencyCheckHtml = $layout->createBlock(
|
58 |
+
'expercash_scoring/checkout_onepage_billing_agreement',
|
59 |
+
'onepage_scoring_agreement'
|
60 |
+
)
|
61 |
+
->setTemplate('expercash-scoring/scoring/agreement.phtml')
|
62 |
+
->renderView();
|
63 |
+
$html = $html . $solvencyCheckHtml;
|
64 |
+
$transport->setHtml($html);
|
65 |
+
}
|
66 |
+
}
|
67 |
+
}
|
68 |
+
|
69 |
+
/**
|
70 |
+
* checks if the terms and conditions were confirmed or not.
|
71 |
+
* If not the error message is appended to the error messages stack
|
72 |
+
*
|
73 |
+
* @param $observer
|
74 |
+
*
|
75 |
+
* @return $this
|
76 |
+
*/
|
77 |
+
public function performSolvencyCheck($observer)
|
78 |
+
{
|
79 |
+
/** @var $controller Mage_Checkout_Controller_Action */
|
80 |
+
$controller = $observer->getControllerAction();
|
81 |
+
$request = $controller->getRequest();
|
82 |
+
$quote = Mage::getSingleton('checkout/session')->getQuote();
|
83 |
+
$scoringResult = null;
|
84 |
+
// check if terms and conditions are confirmed
|
85 |
+
if ($controller instanceof Mage_Checkout_Controller_Action
|
86 |
+
&& 'saveBilling' === $request->getActionName()
|
87 |
+
&& $this->getConfigModel()->isActive(
|
88 |
+
$quote->getStoreId()
|
89 |
+
)
|
90 |
+
) {
|
91 |
+
// in case there were errors before, don't perform solvency check
|
92 |
+
$prevErrorMessages = Mage::helper('core')->jsonDecode(
|
93 |
+
$controller->getResponse()->getBody()
|
94 |
+
);
|
95 |
+
if (array_key_exists('error', $prevErrorMessages)) {
|
96 |
+
return $this;
|
97 |
+
}
|
98 |
+
$scoringResult = Mage::getModel('expercash_scoring/solvency_check')
|
99 |
+
->performSolvencyCheck(
|
100 |
+
$quote, $request
|
101 |
+
);
|
102 |
+
Mage::getSingleton('checkout/session')->setData(
|
103 |
+
'ExperCash_Scoring_Check_Value', $scoringResult
|
104 |
+
);
|
105 |
+
|
106 |
+
}
|
107 |
+
}
|
108 |
+
|
109 |
+
/**
|
110 |
+
* triggers the filtering of the payment methods
|
111 |
+
*
|
112 |
+
* @param $observer
|
113 |
+
*/
|
114 |
+
public function filterPaymentMethods($observer)
|
115 |
+
{
|
116 |
+
$block = $observer->getBlock();
|
117 |
+
if ($block instanceof Mage_Payment_Block_Form_Container) {
|
118 |
+
$quote = Mage::getSingleton('checkout/session')->getQuote();
|
119 |
+
if ($this->getConfigModel()->isActive(
|
120 |
+
$quote->getStoreId()
|
121 |
+
)
|
122 |
+
) {
|
123 |
+
$methods = $block->getMethods();
|
124 |
+
/** @var $filterModel Expercash_Scoring_Model_Checkout_Payment_Methods_Filter */
|
125 |
+
$filterModel = Mage::getModel(
|
126 |
+
'expercash_scoring/checkout_payment_methods_filter'
|
127 |
+
);
|
128 |
+
$scoringValue = Mage::getSingleton('checkout/session')->getData(
|
129 |
+
'ExperCash_Scoring_Check_Value'
|
130 |
+
);
|
131 |
+
$methods = $filterModel->filterPaymentMethods(
|
132 |
+
$quote, $methods, $scoringValue
|
133 |
+
);
|
134 |
+
$block->setData('methods', $methods);
|
135 |
+
}
|
136 |
+
}
|
137 |
+
}
|
138 |
+
|
139 |
+
/**
|
140 |
+
* perform update for scoring value entry if needed (= user was registering)
|
141 |
+
*
|
142 |
+
* @param $observer
|
143 |
+
*/
|
144 |
+
public function setScoringValueToRegisteredUser($observer)
|
145 |
+
{
|
146 |
+
$order = $observer->getOrder();
|
147 |
+
$session = Mage::getSingleton('checkout/session');
|
148 |
+
$scoringValueId = $session->getData('exp_scoring_id');
|
149 |
+
$this->getResultModel()->setCustomerToScoringValue($scoringValueId, $order->getCustomerId());
|
150 |
+
$session->unsetData('exp_scoring_id');
|
151 |
+
}
|
152 |
+
|
153 |
+
}
|
app/code/community/Expercash/Scoring/Model/Quote/Address/Validation.php
ADDED
@@ -0,0 +1,110 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Model_Quote_Address_Validation
|
12 |
+
{
|
13 |
+
|
14 |
+
/* @var $configModel Expercash_Scoring_Model_Config */
|
15 |
+
protected $configModel = null;
|
16 |
+
|
17 |
+
/**
|
18 |
+
* sets the config model
|
19 |
+
*
|
20 |
+
* @param Expercash_Scoring_Model_Config $configModel
|
21 |
+
*/
|
22 |
+
public function setConfigModel(Expercash_Scoring_Model_Config $configModel)
|
23 |
+
{
|
24 |
+
$this->configModel = $configModel;
|
25 |
+
}
|
26 |
+
|
27 |
+
/**
|
28 |
+
* gets the config model
|
29 |
+
*
|
30 |
+
* @return Expercash_Scoring_Model_Config|null
|
31 |
+
*/
|
32 |
+
public function getConfigModel()
|
33 |
+
{
|
34 |
+
if (null === $this->configModel) {
|
35 |
+
$this->setConfigModel(Mage::getModel('expercash_scoring/config'));
|
36 |
+
}
|
37 |
+
|
38 |
+
return $this->configModel;
|
39 |
+
}
|
40 |
+
|
41 |
+
/**
|
42 |
+
* @param Mage_Sales_Model_Quote_Address $addressToCheck
|
43 |
+
*
|
44 |
+
* @return bool - true if it's valid for country, false if not or the address
|
45 |
+
* type does not match
|
46 |
+
*/
|
47 |
+
public function isValidCountry(
|
48 |
+
Mage_Sales_Model_Quote_Address $addressToCheck, $storeId = null
|
49 |
+
)
|
50 |
+
{
|
51 |
+
$result = false;
|
52 |
+
// only need to check for billing addresses
|
53 |
+
if ($addressToCheck->getAddressType()
|
54 |
+
=== Mage_Sales_Model_Quote_Address::TYPE_BILLING
|
55 |
+
) {
|
56 |
+
$validCountries = $this->getConfigModel()->getAllowedCountries(
|
57 |
+
$storeId
|
58 |
+
);
|
59 |
+
if (in_array($addressToCheck->getCountry(), $validCountries)) {
|
60 |
+
$result = true;
|
61 |
+
}
|
62 |
+
}
|
63 |
+
|
64 |
+
return $result;
|
65 |
+
}
|
66 |
+
|
67 |
+
/**
|
68 |
+
* @return Expercash_Scoring_Model_Solvency_Check_Result
|
69 |
+
*/
|
70 |
+
protected function getResultModel()
|
71 |
+
{
|
72 |
+
return Mage::getModel('expercash_scoring/solvency_check_result');
|
73 |
+
}
|
74 |
+
|
75 |
+
|
76 |
+
/**
|
77 |
+
* returns the data helper
|
78 |
+
*
|
79 |
+
* @return Expercash_Scoring_Helper_Data
|
80 |
+
*/
|
81 |
+
protected function getDataHelper()
|
82 |
+
{
|
83 |
+
return Mage::helper('expercash_scoring/data');
|
84 |
+
}
|
85 |
+
|
86 |
+
/**
|
87 |
+
* validates the confirmation of terms and conditions
|
88 |
+
*
|
89 |
+
* @param Mage_Sales_Model_Quote $quote - current quote
|
90 |
+
* @param Mage_Core_Controller_Request_Http $request - the current request
|
91 |
+
*
|
92 |
+
* @return bool - true if the terms and conditions are valid, false otherwise
|
93 |
+
*/
|
94 |
+
public function hasTermsAndConditionsConfirmed(
|
95 |
+
Mage_Core_Controller_Request_Http $request
|
96 |
+
)
|
97 |
+
{
|
98 |
+
$requestParams = $request->getParam('billing');
|
99 |
+
if ((!is_array($requestParams)
|
100 |
+
|| !array_key_exists(
|
101 |
+
'scoring_check_confirmation', $requestParams
|
102 |
+
))
|
103 |
+
) {
|
104 |
+
return false;
|
105 |
+
}
|
106 |
+
|
107 |
+
return true;
|
108 |
+
}
|
109 |
+
|
110 |
+
}
|
app/code/community/Expercash/Scoring/Model/Quote/Amount/Validation.php
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Model_Quote_Amount_Validation
|
12 |
+
{
|
13 |
+
|
14 |
+
/**
|
15 |
+
* @return Expercash_Scoring_Model_Config
|
16 |
+
*/
|
17 |
+
protected function getConfigModel()
|
18 |
+
{
|
19 |
+
return Mage::getModel('expercash_scoring/config');
|
20 |
+
}
|
21 |
+
|
22 |
+
/**
|
23 |
+
* checks whether the quote has the required minimum amount or not
|
24 |
+
*
|
25 |
+
* @param Mage_Sales_Model_Quote $quote
|
26 |
+
*
|
27 |
+
* @return bool
|
28 |
+
*/
|
29 |
+
public function hasQuoteMinAmount(Mage_Sales_Model_Quote $quote)
|
30 |
+
{
|
31 |
+
$result = true;
|
32 |
+
$minTotal = $this->getConfigModel()->getTotalMin($quote->getStoreId());
|
33 |
+
if (is_numeric($minTotal) && 0 < $minTotal) {
|
34 |
+
$result = ($minTotal < $quote->getBaseGrandTotal());
|
35 |
+
}
|
36 |
+
return $result;
|
37 |
+
}
|
38 |
+
|
39 |
+
}
|
app/code/community/Expercash/Scoring/Model/Solvency/Check.php
ADDED
@@ -0,0 +1,388 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Model_Solvency_Check
|
12 |
+
{
|
13 |
+
|
14 |
+
const Session_Checks_Cnt = 'ExperCash_Scoring_Check_Cnt';
|
15 |
+
|
16 |
+
/**
|
17 |
+
* @return Expercash_Scoring_Model_Quote_Address_Validation
|
18 |
+
*/
|
19 |
+
protected function getAddressValidationModel()
|
20 |
+
{
|
21 |
+
return Mage::getModel('expercash_scoring/quote_address_validation');
|
22 |
+
}
|
23 |
+
|
24 |
+
/**
|
25 |
+
* @return Expercash_Scoring_Helper_Request_Params_Adapter
|
26 |
+
*/
|
27 |
+
protected function getParamsAdapter()
|
28 |
+
{
|
29 |
+
return Mage::helper('expercash_scoring/request_params_adapter');
|
30 |
+
}
|
31 |
+
|
32 |
+
/**
|
33 |
+
* @return Expercash_Scoring_Model_Solvency_Check_Client
|
34 |
+
*/
|
35 |
+
protected function getSolvencyCheckClient()
|
36 |
+
{
|
37 |
+
return Mage::getModel('expercash_scoring/solvency_check_client');
|
38 |
+
}
|
39 |
+
|
40 |
+
/**
|
41 |
+
* @return Expercash_Scoring_Model_Solvency_Check_Response
|
42 |
+
*/
|
43 |
+
protected function getSolvencyCheckResponse()
|
44 |
+
{
|
45 |
+
return Mage::getModel('expercash_scoring/solvency_check_response');
|
46 |
+
}
|
47 |
+
|
48 |
+
/**
|
49 |
+
* @return Expercash_Scoring_Model_Config
|
50 |
+
*/
|
51 |
+
protected function getConfigModel()
|
52 |
+
{
|
53 |
+
return Mage::getModel('expercash_scoring/config');
|
54 |
+
}
|
55 |
+
|
56 |
+
/**
|
57 |
+
* @return Expercash_Scoring_Model_Solvency_Check_Result
|
58 |
+
*/
|
59 |
+
protected function getResultModel()
|
60 |
+
{
|
61 |
+
return Mage::getModel('expercash_scoring/solvency_check_result');
|
62 |
+
}
|
63 |
+
|
64 |
+
/**
|
65 |
+
* @return Mage_Checkout_Model_Session
|
66 |
+
*/
|
67 |
+
protected function getCheckoutSession()
|
68 |
+
{
|
69 |
+
return Mage::getSingleton('checkout/session');
|
70 |
+
}
|
71 |
+
|
72 |
+
/**
|
73 |
+
* @return Expercash_Scoring_Model_Quote_Amount_Validation
|
74 |
+
*/
|
75 |
+
protected function getAmountValidationModel()
|
76 |
+
{
|
77 |
+
return Mage::getModel('expercash_scoring/quote_amount_validation');
|
78 |
+
}
|
79 |
+
|
80 |
+
/**
|
81 |
+
* @return Expercash_Scoring_Helper_Data
|
82 |
+
*/
|
83 |
+
protected function getDataHelper()
|
84 |
+
{
|
85 |
+
return Mage::helper('expercash_scoring/data');
|
86 |
+
}
|
87 |
+
|
88 |
+
/**
|
89 |
+
* performs the solvency check
|
90 |
+
*
|
91 |
+
* @param Mage_Sales_Model_Quote $quote - current quote
|
92 |
+
* @param Mage_Core_Controller_Request_Http $request - current request
|
93 |
+
*
|
94 |
+
* @return string| null the scoring value for the customer or null if the check is not performed
|
95 |
+
*/
|
96 |
+
public function performSolvencyCheck(
|
97 |
+
Mage_Sales_Model_Quote $quote,
|
98 |
+
Mage_Core_Controller_Request_Http $request
|
99 |
+
)
|
100 |
+
{
|
101 |
+
/** @var $validationModel Expercash_Scoring_Model_Quote_Address_Validation */
|
102 |
+
$validationModel = $this->getAddressValidationModel();
|
103 |
+
$amountValidation = $this->getAmountValidationModel();
|
104 |
+
$returnValue = null;
|
105 |
+
$storeId = $quote->getStoreId();
|
106 |
+
$dataHelper = $this->getDataHelper();
|
107 |
+
$configModel = $this->getConfigModel();
|
108 |
+
$customerGroup = $quote->getCustomerGroupId();
|
109 |
+
$skipCheckForGroups = $configModel->getSkipForCustomerGroups(
|
110 |
+
$quote->getStoreId()
|
111 |
+
);
|
112 |
+
if ($validationModel->isValidCountry(
|
113 |
+
$quote->getBillingAddress(), $storeId
|
114 |
+
)
|
115 |
+
&& $amountValidation->hasQuoteMinAmount($quote)
|
116 |
+
&& !in_array($customerGroup, $skipCheckForGroups, true)
|
117 |
+
) {
|
118 |
+
|
119 |
+
/*
|
120 |
+
* if the customer has a solvency check result within
|
121 |
+
* the last X days and this option is active, use last known
|
122 |
+
* result
|
123 |
+
*/
|
124 |
+
$returnValue = $this->getResultModel()->getCollection()
|
125 |
+
->getLastEntryFromTheLastDays($quote, $configModel);
|
126 |
+
if (null !== $returnValue) {
|
127 |
+
return $returnValue;
|
128 |
+
}
|
129 |
+
|
130 |
+
if (false === $validationModel->hasTermsAndConditionsConfirmed(
|
131 |
+
$request
|
132 |
+
)
|
133 |
+
) {
|
134 |
+
return Expercash_Scoring_Model_System_Config_Source_Scoring_Value::NO_TERMS_AND_CONDITIONS_VALUE;
|
135 |
+
}
|
136 |
+
|
137 |
+
/*
|
138 |
+
* return default scoring if number of allowed checks per session
|
139 |
+
* is exceeded
|
140 |
+
*/
|
141 |
+
if ($this->isSessionCountExceeded($storeId)) {
|
142 |
+
return $configModel->getDefaultScoringForSessionCount($storeId);
|
143 |
+
}
|
144 |
+
|
145 |
+
/*
|
146 |
+
* return default scoring if number of allowed checks per day
|
147 |
+
* is exceeded
|
148 |
+
*/
|
149 |
+
if ($this->isDayCountExceeded($storeId)) {
|
150 |
+
return $this->getConfigModel()->getDefaultScoringForDayCount(
|
151 |
+
$storeId
|
152 |
+
);
|
153 |
+
}
|
154 |
+
|
155 |
+
if (null === $returnValue) {
|
156 |
+
try {
|
157 |
+
$checksSessionCnt = $this->getChecksSessionCnt();
|
158 |
+
$returnValue = $this->doRequest($quote);
|
159 |
+
Mage::log($returnValue, null, 'returnValue.log');
|
160 |
+
$this->getCheckoutSession()->setData(
|
161 |
+
self::Session_Checks_Cnt, ++$checksSessionCnt
|
162 |
+
);
|
163 |
+
} catch (Exception $e) {
|
164 |
+
$message = sprintf(
|
165 |
+
'Excention during call to Expercash %s',
|
166 |
+
$e->getMessage()
|
167 |
+
);
|
168 |
+
$dataHelper->log($dataHelper->__($message));
|
169 |
+
}
|
170 |
+
}
|
171 |
+
$defaultValue = $configModel->getDefaultScoringIfNoDataReturned(
|
172 |
+
$quote->getStoreId()
|
173 |
+
);
|
174 |
+
if (null === $returnValue) {
|
175 |
+
$returnValue = $defaultValue;
|
176 |
+
}
|
177 |
+
}
|
178 |
+
|
179 |
+
return $returnValue;
|
180 |
+
}
|
181 |
+
|
182 |
+
/**
|
183 |
+
* calls Expercash API for the solvency check
|
184 |
+
*
|
185 |
+
* @param Mage_Sales_Model_Quote $quote
|
186 |
+
*
|
187 |
+
* @return string - the scoring value or null if not given
|
188 |
+
*/
|
189 |
+
protected function doRequest(Mage_Sales_Model_Quote $quote)
|
190 |
+
{
|
191 |
+
/** @var $adapter Expercash_Scoring_Helper_Request_Params_Adapter */
|
192 |
+
$returnValue = null;
|
193 |
+
$adapter = $this->getParamsAdapter();
|
194 |
+
$requestParams = $adapter->convert($quote);
|
195 |
+
/** @var $client Expercash_Scoring_Model_Solvency_Check_Client */
|
196 |
+
$client = $this->getSolvencyCheckClient();
|
197 |
+
$response = $client->postRequest($requestParams);
|
198 |
+
$result = $this->getSolvencyCheckResponse()->parseResponse($response);
|
199 |
+
if (array_key_exists('escore', $result)) {
|
200 |
+
$returnValue = $result['escore'];
|
201 |
+
}
|
202 |
+
$returnValue = $this->getResultFromAdditionalCondition(
|
203 |
+
$quote, $result, $returnValue
|
204 |
+
);
|
205 |
+
// save corrected data to database
|
206 |
+
$result['escore'] = $returnValue;
|
207 |
+
$this->saveSolvencyResult($result, $quote);
|
208 |
+
return $returnValue;
|
209 |
+
}
|
210 |
+
|
211 |
+
/**
|
212 |
+
* saves the solvency request result
|
213 |
+
*
|
214 |
+
* @param array $result
|
215 |
+
* @param Mage_Sales_Model_Quote $quote
|
216 |
+
*
|
217 |
+
*/
|
218 |
+
protected function saveSolvencyResult(
|
219 |
+
array $result, Mage_Sales_Model_Quote $quote
|
220 |
+
)
|
221 |
+
{
|
222 |
+
$model = $this->getResultModel();
|
223 |
+
$model->setScoringData($quote, $result);
|
224 |
+
$model->setAddressData($result);
|
225 |
+
$model->setCustomerData($result);
|
226 |
+
$model->save();
|
227 |
+
if ($this->getDataHelper()->isUserRegistering()) {
|
228 |
+
$this->getCheckoutSession()->setData('exp_scoring_id', $model->getId());
|
229 |
+
}
|
230 |
+
}
|
231 |
+
|
232 |
+
/**
|
233 |
+
* checks whether an additional condition needs to be applied
|
234 |
+
*
|
235 |
+
* @param Mage_Sales_Model_Quote $quote
|
236 |
+
* @param array $response
|
237 |
+
* @param $result
|
238 |
+
*
|
239 |
+
* @return string - the new scoring value
|
240 |
+
*/
|
241 |
+
protected function getResultFromAdditionalCondition(
|
242 |
+
Mage_Sales_Model_Quote $quote, array $response, $result
|
243 |
+
)
|
244 |
+
{
|
245 |
+
$additionalConditions = $this->getAdditionalConditionForScoringValue(
|
246 |
+
$quote, $result
|
247 |
+
);
|
248 |
+
if (0 < count($additionalConditions)
|
249 |
+
&& (!array_key_exists('escore_feature', $response)
|
250 |
+
|| !in_array($response['escore_feature'], $additionalConditions)
|
251 |
+
)
|
252 |
+
) {
|
253 |
+
$result = $this->getNextScoringValue($result);
|
254 |
+
}
|
255 |
+
|
256 |
+
return $result;
|
257 |
+
}
|
258 |
+
|
259 |
+
/**
|
260 |
+
* retrieves if there must be additional information provided in the
|
261 |
+
* expercahs response
|
262 |
+
*
|
263 |
+
* @param Mage_Sales_Model_Quote $quote
|
264 |
+
* @param $scoringValue
|
265 |
+
*
|
266 |
+
* @return array - the additional conditions for the given scoring value
|
267 |
+
*/
|
268 |
+
protected function getAdditionalConditionForScoringValue(
|
269 |
+
Mage_Sales_Model_Quote $quote, $scoringValue
|
270 |
+
)
|
271 |
+
{
|
272 |
+
$result = array();
|
273 |
+
$condition = '';
|
274 |
+
if ($scoringValue
|
275 |
+
=== Expercash_Scoring_Model_System_Config_Source_Scoring_Value::GREEN_VALUE
|
276 |
+
) {
|
277 |
+
$condition = $this->getConfigModel()
|
278 |
+
->getAdditionalConditionForScoringValueGreen(
|
279 |
+
$quote->getStoreId()
|
280 |
+
);
|
281 |
+
}
|
282 |
+
if ($scoringValue
|
283 |
+
=== Expercash_Scoring_Model_System_Config_Source_Scoring_Value::YELLOW_VALUE
|
284 |
+
) {
|
285 |
+
$condition = $this->getConfigModel()
|
286 |
+
->getAdditionalConditionForScoringValueYellow(
|
287 |
+
$quote->getStoreId()
|
288 |
+
);
|
289 |
+
|
290 |
+
}
|
291 |
+
// if a condition is defined we need it for further processing
|
292 |
+
if (0 < strlen(trim($condition))) {
|
293 |
+
$result[] = $condition;
|
294 |
+
}
|
295 |
+
// add higher level rating to result set in order not to get the wrong scoring value
|
296 |
+
if ($condition == Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE) {
|
297 |
+
$result[] = Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_VALUE;
|
298 |
+
}
|
299 |
+
|
300 |
+
return $result;
|
301 |
+
}
|
302 |
+
|
303 |
+
/**
|
304 |
+
* retrieves the next lower scoring value for a given scoring value
|
305 |
+
*
|
306 |
+
* @param $scoringValue - the scoring value the next lower value is to be retrieved
|
307 |
+
*
|
308 |
+
* @return string - the next lower scoring value or the original scoring value if not a green or yellow one
|
309 |
+
*/
|
310 |
+
protected function getNextScoringValue($scoringValue)
|
311 |
+
{
|
312 |
+
if ($scoringValue
|
313 |
+
=== Expercash_Scoring_Model_System_Config_Source_Scoring_Value::GREEN_VALUE
|
314 |
+
) {
|
315 |
+
return Expercash_Scoring_Model_System_Config_Source_Scoring_Value::YELLOW_VALUE;
|
316 |
+
}
|
317 |
+
if ($scoringValue
|
318 |
+
=== Expercash_Scoring_Model_System_Config_Source_Scoring_Value::YELLOW_VALUE
|
319 |
+
) {
|
320 |
+
return Expercash_Scoring_Model_System_Config_Source_Scoring_Value::RED_VALUE;
|
321 |
+
}
|
322 |
+
|
323 |
+
return $scoringValue;
|
324 |
+
}
|
325 |
+
|
326 |
+
/**
|
327 |
+
* @param $checkoutSession
|
328 |
+
*
|
329 |
+
* @return int
|
330 |
+
*/
|
331 |
+
protected function getChecksSessionCnt()
|
332 |
+
{
|
333 |
+
$checksSessionCnt = $this->getCheckoutSession()->getData(
|
334 |
+
self::Session_Checks_Cnt
|
335 |
+
);
|
336 |
+
|
337 |
+
// initialize count for checks per session if needed
|
338 |
+
if (!is_numeric($checksSessionCnt)) {
|
339 |
+
$checksSessionCnt = 0;
|
340 |
+
}
|
341 |
+
|
342 |
+
return $checksSessionCnt;
|
343 |
+
}
|
344 |
+
|
345 |
+
/**
|
346 |
+
* checks if the configured session count is exceeded or not
|
347 |
+
*
|
348 |
+
* @return bool- true if exceeded, false otherwise
|
349 |
+
*/
|
350 |
+
protected function isSessionCountExceeded($storeId = null)
|
351 |
+
{
|
352 |
+
$checkoutSession = $this->getCheckoutSession();
|
353 |
+
$checksSessionCnt = $this->getChecksSessionCnt($checkoutSession);
|
354 |
+
|
355 |
+
$allowChecksSession = $this->getConfigModel()
|
356 |
+
->getMaxNumberOfChecksPerSession(
|
357 |
+
$storeId
|
358 |
+
);
|
359 |
+
|
360 |
+
return (is_numeric($allowChecksSession)
|
361 |
+
&& $allowChecksSession < $checksSessionCnt);
|
362 |
+
}
|
363 |
+
|
364 |
+
/**
|
365 |
+
* checks if the allowed checks per day are exceeded
|
366 |
+
*
|
367 |
+
* @return bool - true if the allowed checks per day are exceeded,
|
368 |
+
* false otherwise
|
369 |
+
*/
|
370 |
+
public function isDayCountExceeded($storeId = null)
|
371 |
+
{
|
372 |
+
$allowedChecksPerDay = $this->getConfigModel()
|
373 |
+
->getMaxNumberOfChecksPerDay(
|
374 |
+
$storeId
|
375 |
+
);
|
376 |
+
$entriesForCurrentDay = $this->getResultModel()->getCollection()
|
377 |
+
->getEntriesForCurrentDay();
|
378 |
+
|
379 |
+
/*
|
380 |
+
* return default scoring if number of allowed checks per day
|
381 |
+
* is exceeded
|
382 |
+
*/
|
383 |
+
|
384 |
+
return (0 < $allowedChecksPerDay
|
385 |
+
&& $allowedChecksPerDay < $entriesForCurrentDay);
|
386 |
+
}
|
387 |
+
|
388 |
+
}
|
app/code/community/Expercash/Scoring/Model/Solvency/Check/Client.php
ADDED
@@ -0,0 +1,136 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ExperCash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Model_Solvency_Check_Client
|
12 |
+
{
|
13 |
+
|
14 |
+
/**
|
15 |
+
* Max. amount of redirections to follow
|
16 |
+
*/
|
17 |
+
const MAXREDIRECTS = 2;
|
18 |
+
|
19 |
+
/**
|
20 |
+
* Timeout in seconds before closing the connection
|
21 |
+
*/
|
22 |
+
const TIMEOUT = 30;
|
23 |
+
|
24 |
+
/**
|
25 |
+
* Transport layer for SSL
|
26 |
+
*/
|
27 |
+
const SSLTRANSPORT = 'tcp';
|
28 |
+
|
29 |
+
protected $client = null;
|
30 |
+
|
31 |
+
/**
|
32 |
+
* sets the http client
|
33 |
+
*
|
34 |
+
* @param Varien_Http_Client $client
|
35 |
+
*/
|
36 |
+
public function setClient(Varien_Http_Client $client)
|
37 |
+
{
|
38 |
+
$this->client = $client;
|
39 |
+
}
|
40 |
+
|
41 |
+
/**
|
42 |
+
* @return Varien_Http_Client $client
|
43 |
+
*/
|
44 |
+
public function getClient()
|
45 |
+
{
|
46 |
+
if (null == $this->client) {
|
47 |
+
$this->client = new Varien_Http_Client();
|
48 |
+
}
|
49 |
+
return $this->client;
|
50 |
+
}
|
51 |
+
|
52 |
+
/**
|
53 |
+
* @return Expercash_Scoring_Model_Config
|
54 |
+
*/
|
55 |
+
protected function getConfig()
|
56 |
+
{
|
57 |
+
return Mage::getModel('expercash_scoring/config');
|
58 |
+
}
|
59 |
+
|
60 |
+
/**
|
61 |
+
* configures the client for performing solvency checks
|
62 |
+
*/
|
63 |
+
protected function configureClient()
|
64 |
+
{
|
65 |
+
$config = $this->getConfig();
|
66 |
+
$url = $config->getEpiUrl();
|
67 |
+
$client = $this->getClient();
|
68 |
+
$client->setUri($url);
|
69 |
+
$client->setConfig(
|
70 |
+
array(
|
71 |
+
'maxredirects' => self::MAXREDIRECTS,
|
72 |
+
'timeout' => self::TIMEOUT,
|
73 |
+
'ssltransport' => self::SSLTRANSPORT,
|
74 |
+
)
|
75 |
+
);
|
76 |
+
$this->setClient($client);
|
77 |
+
}
|
78 |
+
|
79 |
+
/**
|
80 |
+
* retrieves the data helper
|
81 |
+
*
|
82 |
+
* @return Expercash_Scoring_Helper_Data
|
83 |
+
*/
|
84 |
+
protected function getDataHelper()
|
85 |
+
{
|
86 |
+
return Mage::helper('expercash_scoring/data');
|
87 |
+
}
|
88 |
+
|
89 |
+
/**
|
90 |
+
* logs formatted requests / responses
|
91 |
+
*
|
92 |
+
* @param $params - the requests / responses
|
93 |
+
* @param $prefix - additional logging information
|
94 |
+
*/
|
95 |
+
protected function log($params, $prefix)
|
96 |
+
{
|
97 |
+
if (is_array($params)) {
|
98 |
+
$params = Mage::helper('core/data')->jsonEncode($params);
|
99 |
+
}
|
100 |
+
$message = $prefix . ' ' . $params;
|
101 |
+
$this->getDataHelper()->log($message);
|
102 |
+
}
|
103 |
+
|
104 |
+
/**
|
105 |
+
* performs the post request for the solvency check
|
106 |
+
*
|
107 |
+
* @param array $params - the params we need to transmit
|
108 |
+
*
|
109 |
+
* @return string - the response as xml
|
110 |
+
*/
|
111 |
+
public function postRequest(array $params)
|
112 |
+
{
|
113 |
+
$responseBody = '';
|
114 |
+
$this->configureClient();
|
115 |
+
$client = $this->getClient();
|
116 |
+
$client->setParameterPost($params);
|
117 |
+
$client->setMethod(Zend_Http_Client::POST);
|
118 |
+
$this->log(
|
119 |
+
$params, "Request from Magento to Expercash with following params:"
|
120 |
+
);
|
121 |
+
try {
|
122 |
+
$response = $client->request();
|
123 |
+
$responseBody = $response->getBody();
|
124 |
+
$this->log($responseBody, 'Gateway gave following response:');
|
125 |
+
} catch (Exception $e) {
|
126 |
+
Mage::throwException(
|
127 |
+
Mage::helper('expercash_scoring/data')->__(
|
128 |
+
'Gateway request error: %s', $e->getMessage()
|
129 |
+
)
|
130 |
+
);
|
131 |
+
}
|
132 |
+
|
133 |
+
return $responseBody;
|
134 |
+
}
|
135 |
+
|
136 |
+
}
|
app/code/community/Expercash/Scoring/Model/Solvency/Check/Response.php
ADDED
@@ -0,0 +1,56 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ExperCash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Model_Solvency_Check_Response
|
12 |
+
{
|
13 |
+
|
14 |
+
/**
|
15 |
+
* parses the expercash response
|
16 |
+
*
|
17 |
+
* @param $xmlString - xml response as string
|
18 |
+
*
|
19 |
+
* @return array - the parsed response containing the neccessary data
|
20 |
+
*/
|
21 |
+
public function parseResponse($xmlString)
|
22 |
+
{
|
23 |
+
libxml_use_internal_errors(true);
|
24 |
+
$simpleXMLResponse = simplexml_load_string($xmlString);
|
25 |
+
|
26 |
+
// raise exception if no xml is given
|
27 |
+
if (false === $simpleXMLResponse
|
28 |
+
|| true === is_null($simpleXMLResponse)
|
29 |
+
|| !$simpleXMLResponse instanceof SimpleXMLElement
|
30 |
+
)
|
31 |
+
Mage::throwException(
|
32 |
+
Mage::helper('expercash_scoring/data')->__(
|
33 |
+
'Error while transforming response to simple xml.'
|
34 |
+
)
|
35 |
+
);
|
36 |
+
$responseArray = Mage::helper('core/data')->xmlToAssoc(
|
37 |
+
$simpleXMLResponse
|
38 |
+
);
|
39 |
+
|
40 |
+
// raise exception if no xml in the expercash format is given
|
41 |
+
if (!array_key_exists('rc', $responseArray)
|
42 |
+
|| $responseArray['rc'] != 100
|
43 |
+
)
|
44 |
+
Mage::throwException(
|
45 |
+
Mage::helper('expercash_scoring/data')->__(
|
46 |
+
'Invalid response due to technical problem!'
|
47 |
+
)
|
48 |
+
);
|
49 |
+
|
50 |
+
// remove the unnecessary data from the response
|
51 |
+
if (array_key_exists('escore_scoring', $responseArray)) {
|
52 |
+
unset($responseArray['escore_scoring']);
|
53 |
+
}
|
54 |
+
return $responseArray;
|
55 |
+
}
|
56 |
+
}
|
app/code/community/Expercash/Scoring/Model/Solvency/Check/Result.php
ADDED
@@ -0,0 +1,152 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
class Expercash_Scoring_Model_Solvency_Check_Result
|
11 |
+
extends Mage_Core_Model_Abstract
|
12 |
+
{
|
13 |
+
|
14 |
+
/**
|
15 |
+
* Constructor
|
16 |
+
*
|
17 |
+
* @see lib/Varien/Varien_Object#_construct()
|
18 |
+
* @return Expercash_Scoring_Model_Solvency_Check_Result
|
19 |
+
*/
|
20 |
+
public function _construct()
|
21 |
+
{
|
22 |
+
$this->_init('expercash_scoring/solvency_check_result');
|
23 |
+
parent::_construct();
|
24 |
+
}
|
25 |
+
|
26 |
+
|
27 |
+
/**
|
28 |
+
* deletes entries for a given customer from the scoring result table
|
29 |
+
*
|
30 |
+
* @param $customerId - the customer id we want to delete the scoring
|
31 |
+
* information
|
32 |
+
* @param null $entryId - optional an entry id for a specific result to
|
33 |
+
* delete
|
34 |
+
*/
|
35 |
+
public function deleteForCustomer($customerId, $entryId = null)
|
36 |
+
{
|
37 |
+
$this->getCollection()->deleteForCustomer($customerId, $entryId);
|
38 |
+
}
|
39 |
+
|
40 |
+
|
41 |
+
/**
|
42 |
+
* set the base scoring data
|
43 |
+
*
|
44 |
+
* @param Mage_Sales_Model_Quote $quote
|
45 |
+
* @param $scoringData
|
46 |
+
*/
|
47 |
+
public function setScoringData(
|
48 |
+
Mage_Sales_Model_Quote $quote, array $scoringData
|
49 |
+
)
|
50 |
+
{
|
51 |
+
$this->setQuoteId($quote->getId());
|
52 |
+
$customerId = $quote->getCustomer()->getId();
|
53 |
+
if (0 < $customerId) {
|
54 |
+
$this->setCustomerId($customerId);
|
55 |
+
}
|
56 |
+
if (array_key_exists('escore', $scoringData)) {
|
57 |
+
$this->setEscore($scoringData['escore']);
|
58 |
+
}
|
59 |
+
if (array_key_exists('escore_feature', $scoringData)) {
|
60 |
+
$this->setEscoreFeature($scoringData['escore_feature']);
|
61 |
+
}
|
62 |
+
if (array_key_exists('escore_value', $scoringData)) {
|
63 |
+
$this->setEscoreValue($scoringData['escore_value']);
|
64 |
+
}
|
65 |
+
|
66 |
+
}
|
67 |
+
|
68 |
+
/**
|
69 |
+
* set the customer's address data
|
70 |
+
*
|
71 |
+
* @param array $addressData
|
72 |
+
*/
|
73 |
+
public function setAddressData(array $addressData)
|
74 |
+
{
|
75 |
+
if (array_key_exists('customer_address1', $addressData)
|
76 |
+
&& strlen(trim($addressData['customer_address1'])) < 65
|
77 |
+
) {
|
78 |
+
$this->setCustomerAddress1(trim($addressData['customer_address1']));
|
79 |
+
}
|
80 |
+
if (array_key_exists('customer_address2', $addressData)
|
81 |
+
&& strlen(trim($addressData['customer_address2'])) < 6
|
82 |
+
) {
|
83 |
+
$this->setCustomerAddress2(trim($addressData['customer_address2']));
|
84 |
+
}
|
85 |
+
if (array_key_exists('customer_zip', $addressData)
|
86 |
+
&& strlen(trim($addressData['customer_zip'])) < 11
|
87 |
+
) {
|
88 |
+
$this->setCustomerZip(trim($addressData['customer_zip']));
|
89 |
+
}
|
90 |
+
if (array_key_exists('customer_city', $addressData)
|
91 |
+
&& strlen(trim($addressData['customer_city'])) < 33
|
92 |
+
) {
|
93 |
+
$this->setCustomerCity(trim($addressData['customer_city']));
|
94 |
+
}
|
95 |
+
if (array_key_exists('customer_country', $addressData)
|
96 |
+
&& strlen(trim($addressData['customer_country'])) < 3
|
97 |
+
) {
|
98 |
+
$this->setCustomerCountry(trim($addressData['customer_country']));
|
99 |
+
}
|
100 |
+
}
|
101 |
+
|
102 |
+
/**
|
103 |
+
* sets the customer's data
|
104 |
+
*
|
105 |
+
* @param array $customerData
|
106 |
+
*/
|
107 |
+
public function setCustomerData(array $customerData)
|
108 |
+
{
|
109 |
+
if (array_key_exists('customer_gender', $customerData)
|
110 |
+
&& strlen(trim($customerData['customer_gender'])) < 2
|
111 |
+
) {
|
112 |
+
$this->setCustomerGender(trim($customerData['customer_gender']));
|
113 |
+
}
|
114 |
+
if (array_key_exists('customer_prename', $customerData)
|
115 |
+
&& strlen(trim($customerData['customer_prename'])) < 65
|
116 |
+
) {
|
117 |
+
$this->setCustomerPrename(trim($customerData['customer_prename']));
|
118 |
+
}
|
119 |
+
if (array_key_exists('customer_name', $customerData)
|
120 |
+
&& strlen(trim($customerData['customer_name'])) < 65
|
121 |
+
) {
|
122 |
+
$this->setCustomerName(trim($customerData['customer_name']));
|
123 |
+
}
|
124 |
+
if (array_key_exists('customer_date_of_birth', $customerData)
|
125 |
+
&& 8 == strlen(trim($customerData['customer_date_of_birth']))
|
126 |
+
&& ctype_digit(trim($customerData['customer_date_of_birth']))
|
127 |
+
) {
|
128 |
+
$date = new Zend_Date(trim(
|
129 |
+
$customerData['customer_date_of_birth']
|
130 |
+
), 'yyyyMMdd');
|
131 |
+
$this->setCustomerDateOfBirth($date->get('yyyy-MM-dd'));
|
132 |
+
}
|
133 |
+
|
134 |
+
}
|
135 |
+
|
136 |
+
/**
|
137 |
+
* adds the customer id to the scoring data if given
|
138 |
+
* @param int $scoringValueId - the scoring value id
|
139 |
+
* @param int $customerId - the customer id
|
140 |
+
*/
|
141 |
+
public function setCustomerToScoringValue($scoringValueId, $customerId)
|
142 |
+
{
|
143 |
+
if (is_numeric($scoringValueId) && 0 < $scoringValueId && 0 < $customerId) {
|
144 |
+
$resultModel = $this->load($scoringValueId);
|
145 |
+
if (0 < $resultModel->getCheckId()) {
|
146 |
+
$resultModel->setCustomerId($customerId);
|
147 |
+
$resultModel->save();
|
148 |
+
}
|
149 |
+
}
|
150 |
+
}
|
151 |
+
|
152 |
+
}
|
app/code/community/Expercash/Scoring/Model/System/Config/Source/Scoring/Condition.php
ADDED
@@ -0,0 +1,67 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Model_System_Config_Source_Scoring_Condition
|
12 |
+
{
|
13 |
+
|
14 |
+
const PERSON_KNOWN_VALUE = 'PPB';
|
15 |
+
|
16 |
+
const PERSON_KNOWN_LABEL = 'Person known';
|
17 |
+
|
18 |
+
const DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE = 'PHB';
|
19 |
+
|
20 |
+
const DOMESTIC_HOME_OR_PERSON_KNOWN_LABEL = 'Domestic home or person known';
|
21 |
+
|
22 |
+
const PERSON_KNOWN_UNDELIVERABLE_VALUE = 'PNZ';
|
23 |
+
|
24 |
+
const PERSON_KNOWN_UNDELIVERABLE_LABEL = 'Person known, but undeliverable';
|
25 |
+
|
26 |
+
const ADDRESS_KNOWN_NO_PERSONAL_INFO_VALUE = 'PAB';
|
27 |
+
|
28 |
+
const ADDRESS_KNOWN_NO_PERSONAL_INFO_LABEL = 'Address known, but no personal information';
|
29 |
+
|
30 |
+
const NO_POSTAL_INFORMATION_VALUE = 'PKI';
|
31 |
+
|
32 |
+
const NO_POSTAL_INFORMATION_LABEL = 'No postal information given';
|
33 |
+
|
34 |
+
const PERSON_KNOWN_BUT_DEAD_VALUE = 'PPV';
|
35 |
+
|
36 |
+
const PERSON_KNOWN_BUT_DEAD_LABEL = 'Person known, but dead';
|
37 |
+
|
38 |
+
const ADDRESS_WRONG_VALUE = 'PPF';
|
39 |
+
|
40 |
+
const ADDRESS_WRONG_LABEL = 'Address wrong';
|
41 |
+
|
42 |
+
/**
|
43 |
+
* returns all additional conditions for the scoring values yellow and green
|
44 |
+
*
|
45 |
+
* @return array
|
46 |
+
*/
|
47 |
+
public function toOptionArray()
|
48 |
+
{
|
49 |
+
/* @var $dataHelper Expercash_Scoring_Helper_Data */
|
50 |
+
$dataHelper = Mage::helper('expercash_scoring/data');
|
51 |
+
$values = array(array(
|
52 |
+
'value' => '',
|
53 |
+
'label' => $dataHelper->__('-- none --')
|
54 |
+
));
|
55 |
+
$values[] = array(
|
56 |
+
'value' => self::PERSON_KNOWN_VALUE,
|
57 |
+
'label' => $dataHelper->__(self::PERSON_KNOWN_LABEL)
|
58 |
+
);
|
59 |
+
$values[] = array(
|
60 |
+
'value' => self::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE,
|
61 |
+
'label' => $dataHelper->__(self::DOMESTIC_HOME_OR_PERSON_KNOWN_LABEL)
|
62 |
+
);
|
63 |
+
|
64 |
+
return $values;
|
65 |
+
}
|
66 |
+
|
67 |
+
}
|
app/code/community/Expercash/Scoring/Model/System/Config/Source/Scoring/Value.php
ADDED
@@ -0,0 +1,71 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Model_System_Config_Source_Scoring_Value
|
12 |
+
{
|
13 |
+
const RED_VALUE = 'R';
|
14 |
+
|
15 |
+
const RED_LABEL = 'red';
|
16 |
+
|
17 |
+
const YELLOW_VALUE = 'Y';
|
18 |
+
|
19 |
+
const YELLOW_LABEL = 'yellow';
|
20 |
+
|
21 |
+
const GREEN_VALUE = 'G';
|
22 |
+
|
23 |
+
const GREEN_LABEL = 'green';
|
24 |
+
|
25 |
+
// special internal value if customer has not configmed terms and conditions
|
26 |
+
const NO_TERMS_AND_CONDITIONS_VALUE = 'U';
|
27 |
+
|
28 |
+
/**
|
29 |
+
* returns all possible values for the scoring value
|
30 |
+
*
|
31 |
+
* @return array
|
32 |
+
*/
|
33 |
+
public function toOptionArray()
|
34 |
+
{
|
35 |
+
/* @var $dataHelper Expercash_Scoring_Helper_Data */
|
36 |
+
$dataHelper = Mage::helper('expercash_scoring/data');
|
37 |
+
$values = array(
|
38 |
+
array(
|
39 |
+
'value' => '',
|
40 |
+
'label' => $dataHelper->__('-- none --')
|
41 |
+
)
|
42 |
+
);
|
43 |
+
$values[] = array(
|
44 |
+
'value' => self::RED_VALUE,
|
45 |
+
'label' => $dataHelper->__(self::RED_LABEL)
|
46 |
+
);
|
47 |
+
$values[] = array(
|
48 |
+
'value' => self::YELLOW_VALUE,
|
49 |
+
'label' => $dataHelper->__(self::YELLOW_LABEL)
|
50 |
+
);
|
51 |
+
$values[] = array(
|
52 |
+
'value' => self::GREEN_VALUE,
|
53 |
+
'label' => $dataHelper->__(self::GREEN_LABEL)
|
54 |
+
);
|
55 |
+
|
56 |
+
return $values;
|
57 |
+
}
|
58 |
+
|
59 |
+
/**
|
60 |
+
* returns an array with all valid values
|
61 |
+
*
|
62 |
+
* @return array - the valid values
|
63 |
+
*/
|
64 |
+
public function validValues()
|
65 |
+
{
|
66 |
+
return array(
|
67 |
+
self::RED_VALUE, self::YELLOW_VALUE, self::GREEN_VALUE,
|
68 |
+
self::NO_TERMS_AND_CONDITIONS_VALUE
|
69 |
+
);
|
70 |
+
}
|
71 |
+
}
|
app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/Expercash/Address/CountryTest.php
ADDED
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ${MODULENAME}
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Block_Adminhtml_Customer_Edit_Tab_Expercash_Expercash_Address_CountryTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
|
16 |
+
protected $renderer;
|
17 |
+
|
18 |
+
public function setUp()
|
19 |
+
{
|
20 |
+
$this->renderer
|
21 |
+
= new Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Renderer_Address_Country();
|
22 |
+
$column = new Varien_Object();
|
23 |
+
$column->setIndex('customer_country');
|
24 |
+
$this->renderer->setColumn($column);
|
25 |
+
}
|
26 |
+
|
27 |
+
public function testRender()
|
28 |
+
{
|
29 |
+
$row = new Varien_Object();
|
30 |
+
$this->assertEquals('', $this->renderer->render($row));
|
31 |
+
$row->setCustomerCountry('DE');
|
32 |
+
$this->assertEquals('Germany', $this->renderer->render($row));
|
33 |
+
$row->setCustomerCountry('XY');
|
34 |
+
$this->assertEquals('', $this->renderer->render($row));
|
35 |
+
}
|
36 |
+
}
|
app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/Expercash/Address/StreetTest.php
ADDED
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Block_Adminhtml_Customer_Edit_Tab_Expercash_Expercash_Address_StreetTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
protected $renderer;
|
16 |
+
|
17 |
+
public function setUp()
|
18 |
+
{
|
19 |
+
$this->renderer
|
20 |
+
= new Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Renderer_Address_Street();
|
21 |
+
$column = new Varien_Object();
|
22 |
+
$column->setIndex('customer_address1');
|
23 |
+
$this->renderer->setColumn($column);
|
24 |
+
}
|
25 |
+
|
26 |
+
public function testRender()
|
27 |
+
{
|
28 |
+
$row = new Varien_Object();
|
29 |
+
$this->assertEquals('', $this->renderer->render($row));
|
30 |
+
$row->setCustomerAddress1('An der Tabaksmühle');
|
31 |
+
$this->assertEquals(
|
32 |
+
'An der Tabaksmühle', $this->renderer->render($row)
|
33 |
+
);
|
34 |
+
$row->setCustomerAddress2('1a');
|
35 |
+
$this->assertEquals(
|
36 |
+
'An der Tabaksmühle 1a', $this->renderer->render($row)
|
37 |
+
);
|
38 |
+
}
|
39 |
+
|
40 |
+
}
|
app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/Expercash/Customer/GenderTest.php
ADDED
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Block_Adminhtml_Customer_Edit_Tab_Expercash_Expercash_Customer_GenderTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
public function setUp()
|
16 |
+
{
|
17 |
+
$this->renderer
|
18 |
+
= new Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Renderer_Customer_Gender();
|
19 |
+
$column = new Varien_Object();
|
20 |
+
$column->setIndex('customer_gender');
|
21 |
+
$this->renderer->setColumn($column);
|
22 |
+
}
|
23 |
+
|
24 |
+
public function testRender()
|
25 |
+
{
|
26 |
+
$row = new Varien_Object();
|
27 |
+
$this->assertEquals('', $this->renderer->render($row));
|
28 |
+
$row->setCustomerGender('m');
|
29 |
+
$this->assertEquals(
|
30 |
+
Mage::helper('expercash_scoring/data')->__(
|
31 |
+
'expercash_scoring::male'
|
32 |
+
), $this->renderer->render($row)
|
33 |
+
);
|
34 |
+
$row->setCustomerGender('f');
|
35 |
+
$this->assertEquals(
|
36 |
+
Mage::helper('expercash_scoring/data')->__(
|
37 |
+
'expercash_scoring::female'
|
38 |
+
), $this->renderer->render($row)
|
39 |
+
);
|
40 |
+
$row->setCustomerGender('v');
|
41 |
+
$this->assertEquals(
|
42 |
+
Mage::helper('expercash_scoring/data')->__(''),
|
43 |
+
$this->renderer->render($row)
|
44 |
+
);
|
45 |
+
}
|
46 |
+
|
47 |
+
}
|
app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/Expercash/Escore/ConditionTest.php
ADDED
@@ -0,0 +1,108 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ${MODULENAME}
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Block_Adminhtml_Customer_Edit_Tab_Expercash_Expercash_Escore_ConditionTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
protected $renderer;
|
16 |
+
|
17 |
+
public function setUp()
|
18 |
+
{
|
19 |
+
$this->renderer
|
20 |
+
= new Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Renderer_Escore_Condition();
|
21 |
+
$column = new Varien_Object();
|
22 |
+
$column->setIndex('escore_feature');
|
23 |
+
$this->renderer->setColumn($column);
|
24 |
+
}
|
25 |
+
|
26 |
+
public function testRender()
|
27 |
+
{
|
28 |
+
$helper = Mage::helper('expercash_scoring/data');
|
29 |
+
$row = new Varien_Object();
|
30 |
+
$row->setData(
|
31 |
+
'escore_feature',
|
32 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE
|
33 |
+
);
|
34 |
+
$this->assertEquals(
|
35 |
+
$helper->__(
|
36 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_LABEL
|
37 |
+
), $this->renderer->render($row)
|
38 |
+
);
|
39 |
+
$row->setData(
|
40 |
+
'escore_feature',
|
41 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_VALUE
|
42 |
+
);
|
43 |
+
$this->assertEquals(
|
44 |
+
$helper->__(
|
45 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_LABEL
|
46 |
+
), $this->renderer->render($row)
|
47 |
+
);
|
48 |
+
|
49 |
+
$row->setData(
|
50 |
+
'escore_feature',
|
51 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_UNDELIVERABLE_VALUE
|
52 |
+
);
|
53 |
+
$this->assertEquals(
|
54 |
+
$helper->__(
|
55 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_UNDELIVERABLE_LABEL
|
56 |
+
), $this->renderer->render($row)
|
57 |
+
);
|
58 |
+
|
59 |
+
$row->setData(
|
60 |
+
'escore_feature',
|
61 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::ADDRESS_KNOWN_NO_PERSONAL_INFO_VALUE
|
62 |
+
);
|
63 |
+
$this->assertEquals(
|
64 |
+
$helper->__(
|
65 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::ADDRESS_KNOWN_NO_PERSONAL_INFO_LABEL
|
66 |
+
), $this->renderer->render($row)
|
67 |
+
);
|
68 |
+
|
69 |
+
$row->setData(
|
70 |
+
'escore_feature',
|
71 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::NO_POSTAL_INFORMATION_VALUE
|
72 |
+
);
|
73 |
+
$this->assertEquals(
|
74 |
+
$helper->__(
|
75 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::NO_POSTAL_INFORMATION_LABEL
|
76 |
+
), $this->renderer->render($row)
|
77 |
+
);
|
78 |
+
|
79 |
+
$row->setData(
|
80 |
+
'escore_feature',
|
81 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_BUT_DEAD_VALUE
|
82 |
+
);
|
83 |
+
$this->assertEquals(
|
84 |
+
$helper->__(
|
85 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_BUT_DEAD_LABEL
|
86 |
+
), $this->renderer->render($row)
|
87 |
+
);
|
88 |
+
|
89 |
+
$row->setData(
|
90 |
+
'escore_feature',
|
91 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::ADDRESS_WRONG_VALUE
|
92 |
+
);
|
93 |
+
$this->assertEquals(
|
94 |
+
$helper->__(
|
95 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::ADDRESS_WRONG_LABEL
|
96 |
+
), $this->renderer->render($row)
|
97 |
+
);
|
98 |
+
|
99 |
+
$row->setData(
|
100 |
+
'escore_feature',
|
101 |
+
'something different, but no expercash escore value'
|
102 |
+
);
|
103 |
+
$this->assertEquals(
|
104 |
+
'', $this->renderer->render($row)
|
105 |
+
);
|
106 |
+
}
|
107 |
+
|
108 |
+
}
|
app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/Expercash/Escore/ValueTest.php
ADDED
@@ -0,0 +1,69 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Block_Adminhtml_Customer_Edit_Tab_Expercash_Expercash_Escore_ValueTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
protected $renderer;
|
16 |
+
|
17 |
+
public function setUp()
|
18 |
+
{
|
19 |
+
$this->renderer
|
20 |
+
= new Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Renderer_Escore_Value();
|
21 |
+
$column = new Varien_Object();
|
22 |
+
$column->setIndex('escore');
|
23 |
+
$this->renderer->setColumn($column);
|
24 |
+
}
|
25 |
+
|
26 |
+
public function testRender()
|
27 |
+
{
|
28 |
+
$helper = Mage::helper('expercash_scoring/data');
|
29 |
+
$row = new Varien_Object();
|
30 |
+
$row->setData(
|
31 |
+
'escore',
|
32 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::RED_VALUE
|
33 |
+
);
|
34 |
+
$this->assertEquals(
|
35 |
+
$helper->__(
|
36 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::RED_LABEL
|
37 |
+
), $this->renderer->render($row)
|
38 |
+
);
|
39 |
+
|
40 |
+
$row->setData(
|
41 |
+
'escore',
|
42 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::YELLOW_VALUE
|
43 |
+
);
|
44 |
+
$this->assertEquals(
|
45 |
+
$helper->__(
|
46 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::YELLOW_LABEL
|
47 |
+
), $this->renderer->render($row)
|
48 |
+
);
|
49 |
+
|
50 |
+
$row->setData(
|
51 |
+
'escore',
|
52 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::GREEN_VALUE
|
53 |
+
);
|
54 |
+
$this->assertEquals(
|
55 |
+
$helper->__(
|
56 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::GREEN_LABEL
|
57 |
+
), $this->renderer->render($row)
|
58 |
+
);
|
59 |
+
|
60 |
+
$row->setData(
|
61 |
+
'escore',
|
62 |
+
'something different, but no valid scoring value'
|
63 |
+
);
|
64 |
+
$this->assertEquals(
|
65 |
+
'', $this->renderer->render($row)
|
66 |
+
);
|
67 |
+
}
|
68 |
+
|
69 |
+
}
|
app/code/community/Expercash/Scoring/Test/Block/Adminhtml/Customer/Edit/Tab/Expercash/ScoringTest.php
ADDED
@@ -0,0 +1,62 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Block_Adminhtml_Customer_Edit_Tab_Expercash_ScoringTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
protected $block = null;
|
16 |
+
|
17 |
+
public function setUp()
|
18 |
+
{
|
19 |
+
$this->block
|
20 |
+
= new Expercash_Scoring_Block_Adminhtml_Customer_Edit_Tab_Expercash_Scoring();
|
21 |
+
}
|
22 |
+
|
23 |
+
public function testGetLabel()
|
24 |
+
{
|
25 |
+
$expectedLabel = Mage::helper('expercash_scoring/data')->__(
|
26 |
+
'Scoring Information'
|
27 |
+
);
|
28 |
+
$this->assertEquals($expectedLabel, $this->block->getTabLabel());
|
29 |
+
}
|
30 |
+
|
31 |
+
public function testGetTabTitle()
|
32 |
+
{
|
33 |
+
$expectedLabel = Mage::helper('expercash_scoring/data')->__(
|
34 |
+
'Scoring Information'
|
35 |
+
);
|
36 |
+
$this->assertEquals($expectedLabel, $this->block->getTabTitle());
|
37 |
+
}
|
38 |
+
|
39 |
+
public function testCanShowTab()
|
40 |
+
{
|
41 |
+
$this->assertFalse($this->block->canShowTab());
|
42 |
+
$customer = new Varien_Object();
|
43 |
+
$customer->setId(0);
|
44 |
+
Mage::register('current_customer', $customer);
|
45 |
+
$this->assertFalse($this->block->canShowTab());
|
46 |
+
$customer->setId(1);
|
47 |
+
Mage::register('current_customer', $customer, true);
|
48 |
+
$this->assertTrue($this->block->canShowTab());
|
49 |
+
Mage::unregister('current_customer');
|
50 |
+
}
|
51 |
+
|
52 |
+
public function testIsHidden()
|
53 |
+
{
|
54 |
+
$this->assertFalse($this->block->isHidden());
|
55 |
+
}
|
56 |
+
|
57 |
+
public function testGetAfter()
|
58 |
+
{
|
59 |
+
$this->assertEquals('orders', $this->block->getAfter());
|
60 |
+
}
|
61 |
+
|
62 |
+
}
|
app/code/community/Expercash/Scoring/Test/Block/Checkout/Onepage/Billing/AgreementTest.php
ADDED
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Block_Checkout_Onepage_Billing_AgreementTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
protected $store = null;
|
16 |
+
|
17 |
+
protected function getAgreementBlockMock($storeIdToReturn = null)
|
18 |
+
{
|
19 |
+
$fakeQuote = new Varien_Object();
|
20 |
+
$fakeQuote->setStoreId($storeIdToReturn);
|
21 |
+
$blockMock = $this->getBlockMock(
|
22 |
+
'expercash_scoring/checkout_onepage_billing_agreement', array('getQuote')
|
23 |
+
);
|
24 |
+
$blockMock->expects($this->any())
|
25 |
+
->method('getQuote')
|
26 |
+
->will($this->returnValue($fakeQuote));
|
27 |
+
return $blockMock;
|
28 |
+
}
|
29 |
+
|
30 |
+
public function testGetTermsAndConditionsText()
|
31 |
+
{
|
32 |
+
$this->store = Mage::app()->getStore(0)->load(0);
|
33 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
34 |
+
Expercash_Scoring_Model_Config::GENERAL_PATH . '/terms-addition';
|
35 |
+
$this->store->setConfig($path, "my terms and conditions");
|
36 |
+
$blockMock = $this->getAgreementBlockMock();
|
37 |
+
$this->assertEquals(
|
38 |
+
'my terms and conditions', $blockMock->getTermsAndConditionsText(0)
|
39 |
+
);
|
40 |
+
|
41 |
+
$this->store = Mage::app()->getStore(0)->load(1);
|
42 |
+
|
43 |
+
$this->store->setConfig($path, "my terms and conditions 2");
|
44 |
+
$this->assertEquals(
|
45 |
+
'my terms and conditions 2',
|
46 |
+
$blockMock->getTermsAndConditionsText(1)
|
47 |
+
);
|
48 |
+
}
|
49 |
+
|
50 |
+
}
|
app/code/community/Expercash/Scoring/Test/Helper/DataTest.php
ADDED
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
5 |
+
* @category Netresearch
|
6 |
+
* @package ${MODULENAME}
|
7 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
8 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
9 |
+
*/
|
10 |
+
class Expercash_Scoring_Test_Helper_DataTest extends EcomDev_PHPUnit_Test_Case
|
11 |
+
{
|
12 |
+
|
13 |
+
public function testCheckIfUserIsRegistering()
|
14 |
+
{
|
15 |
+
$quote = new Varien_Object();
|
16 |
+
$quote->setCheckoutMethod(
|
17 |
+
Mage_Sales_Model_Quote::CHECKOUT_METHOD_REGISTER
|
18 |
+
);
|
19 |
+
$sessionMock = $this->getModelMock(
|
20 |
+
'checkout/session', array('getQuote', 'init', 'save')
|
21 |
+
);
|
22 |
+
$sessionMock->expects($this->any())
|
23 |
+
->method('getQuote')
|
24 |
+
->will($this->returnValue($quote));
|
25 |
+
$this->replaceByMock('model', 'checkout/session', $sessionMock);
|
26 |
+
|
27 |
+
|
28 |
+
$this->assertTrue(
|
29 |
+
Mage::helper('expercash_scoring/data')->isUserRegistering()
|
30 |
+
);
|
31 |
+
|
32 |
+
$quote->setCheckoutMethod(
|
33 |
+
Mage_Sales_Model_Quote::CHECKOUT_METHOD_LOGIN_IN
|
34 |
+
);
|
35 |
+
$this->assertTrue(
|
36 |
+
Mage::helper('expercash_scoring/data')->isUserRegistering()
|
37 |
+
);
|
38 |
+
|
39 |
+
$quote->setCheckoutMethod(
|
40 |
+
Mage_Sales_Model_Quote::CHECKOUT_METHOD_GUEST
|
41 |
+
);
|
42 |
+
$this->assertFalse(
|
43 |
+
Mage::helper('expercash_scoring/data')->isUserRegistering()
|
44 |
+
);
|
45 |
+
|
46 |
+
}
|
47 |
+
}
|
app/code/community/Expercash/Scoring/Test/Helper/Request/AdapterTest.php
ADDED
@@ -0,0 +1,178 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Helper_Request_AdapterTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
protected function registerConfigMock()
|
16 |
+
{
|
17 |
+
$configMock = $this->getModelMock(
|
18 |
+
'expercash_scoring/config', array('getProjectId', 'getApiKey')
|
19 |
+
);
|
20 |
+
$configMock->expects($this->any())
|
21 |
+
->method('getProjectId')
|
22 |
+
->will($this->returnValue('4711'));
|
23 |
+
$configMock->expects($this->any())
|
24 |
+
->method('getApiKey')
|
25 |
+
->will($this->returnValue('0815'));
|
26 |
+
$this->replaceByMock('model', 'expercash_scoring/config', $configMock);
|
27 |
+
}
|
28 |
+
|
29 |
+
public function testConvert()
|
30 |
+
{
|
31 |
+
$this->registerConfigMock();
|
32 |
+
/** @var $adapter Expercash_Scoring_Helper_Request_Params_Adapter */
|
33 |
+
$adapter = Mage::helper('expercash_scoring/request_params_adapter');
|
34 |
+
/** @var $address Mage_Sales_Model_Quote_Address */
|
35 |
+
$address = Mage::getModel('sales/quote_address');
|
36 |
+
$address->setFirstname('Max');
|
37 |
+
$address->setLastname('Muster');
|
38 |
+
$address->setStreet('An der Tabaksmühle 18a Hinterhaus');
|
39 |
+
$address->setPostCode('04317');
|
40 |
+
$address->setCity('Leipzig');
|
41 |
+
$address->setCountry('DE');
|
42 |
+
|
43 |
+
/** @var $quote Mage_Sales_Model_Quote */
|
44 |
+
$quote = Mage::getModel('sales/quote');
|
45 |
+
$quote->setBillingAddress($address);
|
46 |
+
$result = $adapter->convert($quote);
|
47 |
+
$this->assertionsForCommonData($result);
|
48 |
+
$this->assertionsForBillingAddress(
|
49 |
+
$result, $quote->getBillingAddress(), 'An der Tabaksmühle', '18a'
|
50 |
+
);
|
51 |
+
|
52 |
+
$address->setStreet('An der Tabaksmühle, Hinterhaus 18a');
|
53 |
+
$quote->setBillingAddress($address);
|
54 |
+
$result = $adapter->convert($quote);
|
55 |
+
$this->assertionsForCommonData($result);
|
56 |
+
$this->assertionsForBillingAddress(
|
57 |
+
$result, $quote->getBillingAddress(),
|
58 |
+
'An der Tabaksmühle, Hinterhaus', '18a'
|
59 |
+
);
|
60 |
+
|
61 |
+
$address->setStreet('An der Tabaksmühle, Hinterhaus');
|
62 |
+
$quote->setBillingAddress($address);
|
63 |
+
$result = $adapter->convert($quote);
|
64 |
+
$this->assertionsForCommonData($result);
|
65 |
+
$this->assertionsForBillingAddress(
|
66 |
+
$result, $quote->getBillingAddress(),
|
67 |
+
'An der Tabaksmühle, Hinterhaus', ''
|
68 |
+
);
|
69 |
+
|
70 |
+
$address->setStreet('M3 8');
|
71 |
+
$quote->setBillingAddress($address);
|
72 |
+
$result = $adapter->convert($quote);
|
73 |
+
$this->assertionsForCommonData($result);
|
74 |
+
$this->assertionsForBillingAddress(
|
75 |
+
$result, $quote->getBillingAddress(), 'M3', '8'
|
76 |
+
);
|
77 |
+
|
78 |
+
$address->setStreet('Ægirsvej 4');
|
79 |
+
$quote->setBillingAddress($address);
|
80 |
+
$result = $adapter->convert($quote);
|
81 |
+
$this->assertionsForCommonData($result);
|
82 |
+
$this->assertionsForBillingAddress(
|
83 |
+
$result, $quote->getBillingAddress(), 'Ægirsvej', '4'
|
84 |
+
);
|
85 |
+
|
86 |
+
$this->assertArrayNotHasKey('customer_gender', $result);
|
87 |
+
$this->assertArrayNotHasKey('customer_date_of_birth', $result);
|
88 |
+
}
|
89 |
+
|
90 |
+
public function testConvertContainsCustomerGender()
|
91 |
+
{
|
92 |
+
$helperMock = $this->getHelperMock(
|
93 |
+
'expercash_scoring/request_params_adapter', array('getGenderText')
|
94 |
+
);
|
95 |
+
$helperMock->expects($this->any())
|
96 |
+
->method('getGenderText')
|
97 |
+
->will($this->returnValue('male'));
|
98 |
+
$address = Mage::getModel('sales/quote_address');
|
99 |
+
$quote = Mage::getModel('sales/quote');
|
100 |
+
$quote->setBillingAddress($address);
|
101 |
+
$result = $helperMock->convert($quote);
|
102 |
+
$this->assertArrayHasKey('customer_gender', $result);
|
103 |
+
$this->assertEquals('m', $result['customer_gender']);
|
104 |
+
|
105 |
+
$helperMock = $this->getHelperMock(
|
106 |
+
'expercash_scoring/request_params_adapter', array('getGenderText')
|
107 |
+
);
|
108 |
+
$helperMock->expects($this->any())
|
109 |
+
->method('getGenderText')
|
110 |
+
->will($this->returnValue('female'));
|
111 |
+
$result = $helperMock->convert($quote);
|
112 |
+
$this->assertArrayHasKey('customer_gender', $result);
|
113 |
+
$this->assertEquals('f', $result['customer_gender']);
|
114 |
+
|
115 |
+
}
|
116 |
+
|
117 |
+
public function testConvertContainsCustomerDob()
|
118 |
+
{
|
119 |
+
/** @var $adapter Expercash_Scoring_Helper_Request_Params_Adapter */
|
120 |
+
$adapter = Mage::helper('expercash_scoring/request_params_adapter');
|
121 |
+
/** @var $address Mage_Sales_Model_Quote_address */
|
122 |
+
$address = Mage::getModel('sales/quote_address');
|
123 |
+
/** @var $quote Mage_Sales_Model_Quote */
|
124 |
+
$quote = Mage::getModel('sales/quote');
|
125 |
+
$quote->setBillingAddress($address);
|
126 |
+
$customer = Mage::getModel('customer/customer');
|
127 |
+
$customer->setDob('1999-01-01');
|
128 |
+
$quote->setCustomer($customer);
|
129 |
+
$result = $adapter->convert($quote);
|
130 |
+
$this->assertArrayHasKey('customer_date_of_birth', $result);
|
131 |
+
$this->assertEquals('19990101', $result['customer_date_of_birth']);
|
132 |
+
}
|
133 |
+
|
134 |
+
protected function assertionsForCommonData($dataArray)
|
135 |
+
{
|
136 |
+
$this->assertArrayHasKey('pid', $dataArray);
|
137 |
+
$this->assertArrayHasKey('pkey', $dataArray);
|
138 |
+
$this->assertArrayHasKey('cref', $dataArray);
|
139 |
+
|
140 |
+
$this->assertEquals('4711', $dataArray['pid']);
|
141 |
+
$this->assertEquals('0815', $dataArray['pkey']);
|
142 |
+
}
|
143 |
+
|
144 |
+
protected function assertionsForBillingAddress(
|
145 |
+
$dataArray, $billingAddress, $expectedStreet, $expectedStreetNumber
|
146 |
+
)
|
147 |
+
{
|
148 |
+
$this->assertArrayHasKey('customer_prename', $dataArray);
|
149 |
+
$this->assertArrayHasKey('customer_name', $dataArray);
|
150 |
+
$this->assertArrayHasKey('customer_address1', $dataArray);
|
151 |
+
$this->assertArrayHasKey('customer_address2', $dataArray);
|
152 |
+
$this->assertArrayHasKey('customer_zip', $dataArray);
|
153 |
+
$this->assertArrayHasKey('customer_city', $dataArray);
|
154 |
+
$this->assertArrayHasKey('customer_country', $dataArray);
|
155 |
+
|
156 |
+
$this->assertEquals(
|
157 |
+
$billingAddress->getFirstname(), $dataArray['customer_prename']
|
158 |
+
);
|
159 |
+
$this->assertEquals(
|
160 |
+
$billingAddress->getLastname(), $dataArray['customer_name']
|
161 |
+
);
|
162 |
+
$this->assertEquals($expectedStreet, $dataArray['customer_address1']);
|
163 |
+
$this->assertEquals(
|
164 |
+
$expectedStreetNumber, $dataArray['customer_address2']
|
165 |
+
);
|
166 |
+
$this->assertEquals(
|
167 |
+
$billingAddress->getPostcode(), $dataArray['customer_zip']
|
168 |
+
);
|
169 |
+
$this->assertEquals(
|
170 |
+
$billingAddress->getCity(), $dataArray['customer_city']
|
171 |
+
);
|
172 |
+
$this->assertEquals(
|
173 |
+
$billingAddress->getCountry(), $dataArray['customer_country']
|
174 |
+
);
|
175 |
+
}
|
176 |
+
|
177 |
+
|
178 |
+
}
|
app/code/community/Expercash/Scoring/Test/Model/Checkout/Payment/Methods/FilterTest.php
ADDED
@@ -0,0 +1,165 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ${MODULENAME}
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Model_Checkout_Payment_Methods_FilterTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
public function testFilterPaymentsPassMethodsWithInvalidScoringValue()
|
16 |
+
{
|
17 |
+
$quote = Mage::getModel('sales/quote');
|
18 |
+
$paymentMethods = $this->getFakePaymentMethods();
|
19 |
+
$scoringValue = null;
|
20 |
+
$scoringValue = null;
|
21 |
+
$filterModel = Mage::getModel(
|
22 |
+
'expercash_scoring/checkout_payment_methods_filter'
|
23 |
+
);
|
24 |
+
$filteredMethods = $filterModel->filterPaymentMethods(
|
25 |
+
$quote, $paymentMethods, $scoringValue
|
26 |
+
);
|
27 |
+
$this->assertEquals($paymentMethods, $filteredMethods);
|
28 |
+
}
|
29 |
+
|
30 |
+
public function testFilterPaymentMethodsPassWithEmptyPaymentMethods()
|
31 |
+
{
|
32 |
+
$quote = Mage::getModel('sales/quote');
|
33 |
+
$paymentMethods = array();
|
34 |
+
$scoringValue = null;
|
35 |
+
$scoringValue
|
36 |
+
= Expercash_Scoring_Model_System_Config_Source_Scoring_Value::GREEN_VALUE;
|
37 |
+
$filterModel = Mage::getModel(
|
38 |
+
'expercash_scoring/checkout_payment_methods_filter'
|
39 |
+
);
|
40 |
+
$filteredMethods = $filterModel->filterPaymentMethods(
|
41 |
+
$quote, $paymentMethods, $scoringValue
|
42 |
+
);
|
43 |
+
$this->assertEquals($paymentMethods, $filteredMethods);
|
44 |
+
}
|
45 |
+
|
46 |
+
public function testFilterPaymentMethodsFiltersForRedValue()
|
47 |
+
{
|
48 |
+
$quote = Mage::getModel('sales/quote');
|
49 |
+
$paymentMethods = $this->getFakePaymentMethods();
|
50 |
+
$scoringValue
|
51 |
+
= Expercash_Scoring_Model_System_Config_Source_Scoring_Value::RED_VALUE;
|
52 |
+
$fakeAllowedPms = array('checkmo');
|
53 |
+
$configMock = $this->getConfigMock(
|
54 |
+
'getAllowedPaymentMethodsForScoringValueRed', $fakeAllowedPms
|
55 |
+
);
|
56 |
+
$filterMock = $this->getFilterMock($configMock);
|
57 |
+
$result = $filterMock->filterPaymentMethods(
|
58 |
+
$quote, $paymentMethods, $scoringValue
|
59 |
+
);
|
60 |
+
$this->assertTrue(array_key_exists('checkmo', $result));
|
61 |
+
$this->assertFalse(array_key_exists('savedcc', $result));
|
62 |
+
$this->assertFalse(array_key_exists('paypal', $result));
|
63 |
+
$this->assertFalse(array_key_exists('ops_cc', $result));
|
64 |
+
|
65 |
+
}
|
66 |
+
|
67 |
+
public function testFilterPaymentMethodsFiltersForYellowValue()
|
68 |
+
{
|
69 |
+
$quote = Mage::getModel('sales/quote');
|
70 |
+
$paymentMethods = $this->getFakePaymentMethods();
|
71 |
+
$scoringValue
|
72 |
+
= Expercash_Scoring_Model_System_Config_Source_Scoring_Value::YELLOW_VALUE;
|
73 |
+
$fakeAllowedPms = array('savedcc', 'checkmo');
|
74 |
+
$configMock = $this->getConfigMock(
|
75 |
+
'getAllowedPaymentMethodsForScoringValueYellow', $fakeAllowedPms
|
76 |
+
);
|
77 |
+
$filterMock = $this->getFilterMock($configMock);
|
78 |
+
$result = $filterMock->filterPaymentMethods(
|
79 |
+
$quote, $paymentMethods, $scoringValue
|
80 |
+
);
|
81 |
+
$this->assertTrue(array_key_exists('checkmo', $result));
|
82 |
+
$this->assertTrue(array_key_exists('savedcc', $result));
|
83 |
+
$this->assertFalse(array_key_exists('paypal', $result));
|
84 |
+
$this->assertFalse(array_key_exists('ops_cc', $result));
|
85 |
+
}
|
86 |
+
|
87 |
+
public function testFilterPaymentMethodsFiltersForGreenValue()
|
88 |
+
{
|
89 |
+
$quote = Mage::getModel('sales/quote');
|
90 |
+
$paymentMethods = $this->getFakePaymentMethods();
|
91 |
+
$scoringValue
|
92 |
+
= Expercash_Scoring_Model_System_Config_Source_Scoring_Value::GREEN_VALUE;
|
93 |
+
$fakeAllowedPms = array('savedcc', 'checkmo', 'paypal', 'ops_cc');
|
94 |
+
$configMock = $this->getConfigMock(
|
95 |
+
'getAllowedPaymentMethodsForScoringValueGreen', $fakeAllowedPms
|
96 |
+
);
|
97 |
+
$filterMock = $this->getFilterMock($configMock);
|
98 |
+
$result = $filterMock->filterPaymentMethods(
|
99 |
+
$quote, $paymentMethods, $scoringValue
|
100 |
+
);
|
101 |
+
$this->assertTrue(array_key_exists('checkmo', $result));
|
102 |
+
$this->assertTrue(array_key_exists('savedcc', $result));
|
103 |
+
$this->assertTrue(array_key_exists('paypal', $result));
|
104 |
+
$this->assertTrue(array_key_exists('ops_cc', $result));
|
105 |
+
}
|
106 |
+
|
107 |
+
protected function getFakePaymentMethods()
|
108 |
+
{
|
109 |
+
return array(
|
110 |
+
'checkmo' => $this->getFakePaymentMethod('checkmo'),
|
111 |
+
'savedcc' => $this->getFakePaymentMethod('savedcc'),
|
112 |
+
'paypal' => $this->getFakePaymentMethod('paypal'),
|
113 |
+
'ops_cc' => $this->getFakePaymentMethod('ops_cc')
|
114 |
+
);
|
115 |
+
}
|
116 |
+
|
117 |
+
protected function getFakePaymentMethod($code)
|
118 |
+
{
|
119 |
+
$method = new Varien_Object();
|
120 |
+
$method->setCode($code);
|
121 |
+
|
122 |
+
return $method;
|
123 |
+
}
|
124 |
+
|
125 |
+
protected function getConfigMock($methodToMock, $mockedReturn)
|
126 |
+
{
|
127 |
+
$configMock = $this->getModelMock(
|
128 |
+
'expercash_scoring/config', array($methodToMock)
|
129 |
+
);
|
130 |
+
$configMock->expects($this->any())
|
131 |
+
->method($methodToMock)
|
132 |
+
->will($this->returnValue($mockedReturn));
|
133 |
+
|
134 |
+
return $configMock;
|
135 |
+
}
|
136 |
+
|
137 |
+
protected function getFilterMock($configMock)
|
138 |
+
{
|
139 |
+
$filterMock = $this->getModelMock(
|
140 |
+
'expercash_scoring/checkout_payment_methods_filter',
|
141 |
+
array('getConfigModel')
|
142 |
+
);
|
143 |
+
$filterMock->expects($this->any())
|
144 |
+
->method('getConfigModel')
|
145 |
+
->will($this->returnValue($configMock));
|
146 |
+
|
147 |
+
return $filterMock;
|
148 |
+
}
|
149 |
+
|
150 |
+
public function testGetConfigModel()
|
151 |
+
{
|
152 |
+
$model = Mage::getModel(
|
153 |
+
'expercash_scoring/checkout_payment_methods_filter'
|
154 |
+
);
|
155 |
+
$reflectionClass = new ReflectionClass(get_class($model));
|
156 |
+
$method = $reflectionClass->getMethod('getConfigModel');
|
157 |
+
$method->setAccessible(true);
|
158 |
+
$model = Mage::getModel(
|
159 |
+
'expercash_scoring/checkout_payment_methods_filter'
|
160 |
+
);
|
161 |
+
$this->assertTrue(
|
162 |
+
$method->invoke($model) instanceof Expercash_Scoring_Model_Config
|
163 |
+
);
|
164 |
+
}
|
165 |
+
}
|
app/code/community/Expercash/Scoring/Test/Model/Config/Source/Scoring/ConditionTest.php
ADDED
@@ -0,0 +1,46 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Model_Config_Source_Scoring_ConditionTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
public function testToOptionArray()
|
16 |
+
{
|
17 |
+
/* @var $model Expercash_Scoring_Model_System_Config_Source_Scoring_Value */
|
18 |
+
$model = Mage::getModel(
|
19 |
+
'expercash_scoring/system_config_source_scoring_condition'
|
20 |
+
);
|
21 |
+
$options = $model->toOptionArray();
|
22 |
+
$this->assertEquals(3, count($options));
|
23 |
+
$assertValues = array(
|
24 |
+
"",
|
25 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_VALUE,
|
26 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE
|
27 |
+
);
|
28 |
+
$dataHelper = Mage::helper('expercash_scoring/data');
|
29 |
+
$assertLabels = array(
|
30 |
+
$dataHelper->__("-- none --"),
|
31 |
+
$dataHelper->__(
|
32 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_LABEL
|
33 |
+
),
|
34 |
+
$dataHelper->__(
|
35 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_LABEL
|
36 |
+
),
|
37 |
+
);
|
38 |
+
$cnt = 0;
|
39 |
+
foreach ($options as $option) {
|
40 |
+
$this->assertEquals($assertValues[$cnt], $option['value']);
|
41 |
+
$this->assertEquals($assertLabels[$cnt], $option['label']);
|
42 |
+
++$cnt;
|
43 |
+
}
|
44 |
+
}
|
45 |
+
|
46 |
+
}
|
app/code/community/Expercash/Scoring/Test/Model/Config/Source/Scoring/ValueTest.php
ADDED
@@ -0,0 +1,62 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Model_Config_Source_Scoring_ValueTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
public function testToOptionArray()
|
16 |
+
{
|
17 |
+
/* @var $model Expercash_Scoring_Model_System_Config_Source_Scoring_Value */
|
18 |
+
$model = Mage::getModel(
|
19 |
+
'expercash_scoring/system_config_source_scoring_value'
|
20 |
+
);
|
21 |
+
$options = $model->toOptionArray();
|
22 |
+
$this->assertEquals(4, count($options));
|
23 |
+
$assertValues = array(
|
24 |
+
"",
|
25 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::RED_VALUE,
|
26 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::YELLOW_VALUE,
|
27 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::GREEN_VALUE
|
28 |
+
);
|
29 |
+
$dataHelper = Mage::helper('expercash_scoring/data');
|
30 |
+
$assertLabels = array(
|
31 |
+
$dataHelper->__("-- none --"),
|
32 |
+
$dataHelper->__(
|
33 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::RED_LABEL
|
34 |
+
),
|
35 |
+
$dataHelper->__(
|
36 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::YELLOW_LABEL
|
37 |
+
),
|
38 |
+
$dataHelper->__(
|
39 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Value::GREEN_LABEL
|
40 |
+
)
|
41 |
+
);
|
42 |
+
$cnt = 0;
|
43 |
+
foreach ($options as $option) {
|
44 |
+
$this->assertEquals($assertValues[$cnt], $option['value']);
|
45 |
+
$this->assertEquals($assertLabels[$cnt], $option['label']);
|
46 |
+
++$cnt;
|
47 |
+
}
|
48 |
+
}
|
49 |
+
|
50 |
+
public function getValidValuesTest()
|
51 |
+
{
|
52 |
+
$expectedValues = array(
|
53 |
+
self::RED_VALUE, self::YELLOW_VALUE, self::GREEN_VALUE,
|
54 |
+
self::NO_TERMS_AND_CONDITIONS_VALUE
|
55 |
+
);
|
56 |
+
$model = Mage::getModel(
|
57 |
+
'expercash_scoring/system_config_source_scoring_value'
|
58 |
+
);
|
59 |
+
$this->assertEquals($expectedValues, $model->getValidValues());
|
60 |
+
}
|
61 |
+
|
62 |
+
}
|
app/code/community/Expercash/Scoring/Test/Model/ConfigTest.php
ADDED
@@ -0,0 +1,346 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
5 |
+
* @category Netresearch
|
6 |
+
* @package Expercash_Scoring
|
7 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
8 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
9 |
+
*/
|
10 |
+
class Expercash_Scoring_Test_Model_ConfigTest
|
11 |
+
extends EcomDev_PHPUnit_Test_Case_Config
|
12 |
+
{
|
13 |
+
|
14 |
+
protected $store = null;
|
15 |
+
|
16 |
+
|
17 |
+
/**
|
18 |
+
* sets the store for test execution
|
19 |
+
*/
|
20 |
+
public function setUp()
|
21 |
+
{
|
22 |
+
$this->store = Mage::app()->getStore(0)->load(0);
|
23 |
+
}
|
24 |
+
|
25 |
+
/**
|
26 |
+
* @return Expercash_Scoring_Model_Config
|
27 |
+
*/
|
28 |
+
protected function getConfigModel()
|
29 |
+
{
|
30 |
+
return Mage::getModel('expercash_scoring/config');
|
31 |
+
}
|
32 |
+
|
33 |
+
public function testIsActive()
|
34 |
+
{
|
35 |
+
$model = $this->getConfigModel();
|
36 |
+
$this->assertFalse($model->isActive());
|
37 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
38 |
+
Expercash_Scoring_Model_Config::GENERAL_PATH . '/active';
|
39 |
+
$this->store->setConfig($path, "1");
|
40 |
+
$this->assertTrue($model->isActive());
|
41 |
+
$this->assertFalse($model->isActive(1));
|
42 |
+
}
|
43 |
+
|
44 |
+
public function testGetProjectId()
|
45 |
+
{
|
46 |
+
$model = $this->getConfigModel();
|
47 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
48 |
+
Expercash_Scoring_Model_Config::GENERAL_PATH . '/projectid';
|
49 |
+
$this->store->setConfig($path, "4711");
|
50 |
+
$this->assertEquals("4711", $model->getProjectId());
|
51 |
+
$this->assertEquals(null, $model->getProjectId(1));
|
52 |
+
}
|
53 |
+
|
54 |
+
public function testGetApiKey()
|
55 |
+
{
|
56 |
+
$model = $this->getConfigModel();
|
57 |
+
$this->assertEquals(null, $model->getApiKey());
|
58 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
59 |
+
Expercash_Scoring_Model_Config::GENERAL_PATH . '/apikey';
|
60 |
+
$this->store->setConfig($path, "4711-0815");
|
61 |
+
$this->assertEquals("4711-0815", $model->getApiKey());
|
62 |
+
$this->assertEquals(null, $model->getApiKey(1));
|
63 |
+
|
64 |
+
}
|
65 |
+
|
66 |
+
public function testTermsAddition()
|
67 |
+
{
|
68 |
+
$model = $this->getConfigModel();
|
69 |
+
$this->assertEquals(null, $model->getTermsAddition());
|
70 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
71 |
+
Expercash_Scoring_Model_Config::GENERAL_PATH . '/terms-addition';
|
72 |
+
$this->store->setConfig($path, "my terms and conditions");
|
73 |
+
$this->assertEquals(
|
74 |
+
"my terms and conditions", $model->getTermsAddition()
|
75 |
+
);
|
76 |
+
$this->assertEquals(null, $model->getTermsAddition(1));
|
77 |
+
}
|
78 |
+
|
79 |
+
public function testGetTotalMin()
|
80 |
+
{
|
81 |
+
$model = $this->getConfigModel();
|
82 |
+
$this->assertEquals(null, $model->getTotalMin());
|
83 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
84 |
+
Expercash_Scoring_Model_Config::SOLVENCY_PATH . '/total-min';
|
85 |
+
$this->store->setConfig($path, 1000);
|
86 |
+
$this->assertEquals(1000, $model->getTotalMin());
|
87 |
+
$this->assertEquals(null, $model->getTotalMin(1));
|
88 |
+
$this->store->resetConfig();
|
89 |
+
}
|
90 |
+
|
91 |
+
public function testGetSkipForCustomerGroups()
|
92 |
+
{
|
93 |
+
$model = $this->getConfigModel();
|
94 |
+
$this->assertEquals(false, $model->getSkipForCustomerGroups());
|
95 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
96 |
+
Expercash_Scoring_Model_Config::SOLVENCY_PATH .
|
97 |
+
'/skip-for-customer-groups';
|
98 |
+
$skipCustomerGroups = array(1, 2);
|
99 |
+
$this->store->setConfig($path, serialize($skipCustomerGroups));
|
100 |
+
$this->assertEquals(
|
101 |
+
$skipCustomerGroups, $model->getSkipForCustomerGroups()
|
102 |
+
);
|
103 |
+
$this->assertEquals(false, $model->getSkipForCustomerGroups(1));
|
104 |
+
}
|
105 |
+
|
106 |
+
public function testGetDefaultScoringIfNoDataReturned()
|
107 |
+
{
|
108 |
+
$model = $this->getConfigModel();
|
109 |
+
$this->assertEquals(null, $model->getDefaultScoringIfNoDataReturned());
|
110 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
111 |
+
Expercash_Scoring_Model_Config::SOLVENCY_PATH .
|
112 |
+
'/default-scoring-if-no-data-returned';
|
113 |
+
$this->store->setConfig($path, 1);
|
114 |
+
$this->assertEquals(1, $model->getDefaultScoringIfNoDataReturned());
|
115 |
+
$this->assertEquals(null, $model->getDefaultScoringIfNoDataReturned(1));
|
116 |
+
|
117 |
+
}
|
118 |
+
|
119 |
+
public function testGetMaxNumberOfChecksPerSession()
|
120 |
+
{
|
121 |
+
$model = $this->getConfigModel();
|
122 |
+
$this->assertEquals(null, $model->getMaxNumberOfChecksPerSession());
|
123 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
124 |
+
Expercash_Scoring_Model_Config::RE_REQUEST_PATH .
|
125 |
+
'/max-number-of-checks-per-session';
|
126 |
+
$this->store->setConfig($path, 1);
|
127 |
+
$this->assertEquals(1, $model->getMaxNumberOfChecksPerSession());
|
128 |
+
$this->assertEquals(null, $model->getMaxNumberOfChecksPerSession(1));
|
129 |
+
|
130 |
+
}
|
131 |
+
|
132 |
+
public function testGetDefaultScoringForSessionCount()
|
133 |
+
{
|
134 |
+
$model = $this->getConfigModel();
|
135 |
+
$this->assertEquals(null, $model->getDefaultScoringForSessionCount());
|
136 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
137 |
+
Expercash_Scoring_Model_Config::RE_REQUEST_PATH .
|
138 |
+
'/default-scoring-for-session-count';
|
139 |
+
$this->store->setConfig($path, 1);
|
140 |
+
$this->assertEquals(1, $model->getDefaultScoringForSessionCount());
|
141 |
+
$this->assertEquals(null, $model->getDefaultScoringForSessionCount(1));
|
142 |
+
}
|
143 |
+
|
144 |
+
public function testGetMaxNumberOfChecksPerDay()
|
145 |
+
{
|
146 |
+
$model = $this->getConfigModel();
|
147 |
+
$this->assertEquals(null, $model->getMaxNumberOfChecksPerDay());
|
148 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
149 |
+
Expercash_Scoring_Model_Config::RE_REQUEST_PATH .
|
150 |
+
'/max-number-of-checks-per-day';
|
151 |
+
$this->store->setConfig($path, 1);
|
152 |
+
$this->assertEquals(1, $model->getMaxNumberOfChecksPerDay());
|
153 |
+
$this->assertEquals(null, $model->getMaxNumberOfChecksPerDay(1));
|
154 |
+
}
|
155 |
+
|
156 |
+
public function testGetDefaultScoringForDayCount()
|
157 |
+
{
|
158 |
+
$model = $this->getConfigModel();
|
159 |
+
$this->assertEquals(null, $model->getDefaultScoringForDayCount());
|
160 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
161 |
+
Expercash_Scoring_Model_Config::RE_REQUEST_PATH .
|
162 |
+
'/default-scoring-for-day-count';
|
163 |
+
$this->store->setConfig($path, 1);
|
164 |
+
$this->assertEquals(1, $model->getDefaultScoringForDayCount());
|
165 |
+
$this->assertEquals(null, $model->getDefaultScoringForDayCount(1));
|
166 |
+
}
|
167 |
+
|
168 |
+
public function testIsScoringExpiringAfterDays()
|
169 |
+
{
|
170 |
+
$model = $this->getConfigModel();
|
171 |
+
$this->assertEquals(null, $model->isScoringExpiringAfterDays());
|
172 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
173 |
+
Expercash_Scoring_Model_Config::RE_REQUEST_PATH .
|
174 |
+
'/scoring-expiring-after-days';
|
175 |
+
$this->store->setConfig($path, 1);
|
176 |
+
$this->assertEquals(1, $model->isScoringExpiringAfterDays());
|
177 |
+
$this->assertEquals(null, $model->isScoringExpiringAfterDays(1));
|
178 |
+
}
|
179 |
+
|
180 |
+
public function testGetScoringRepeatAfterDays()
|
181 |
+
{
|
182 |
+
$model = $this->getConfigModel();
|
183 |
+
$this->assertEquals(null, $model->getScoringRepeatAfterDays());
|
184 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
185 |
+
Expercash_Scoring_Model_Config::RE_REQUEST_PATH .
|
186 |
+
'/scoring-repeat-after-days';
|
187 |
+
$this->store->setConfig($path, 1);
|
188 |
+
$this->assertEquals(1, $model->getScoringRepeatAfterDays());
|
189 |
+
$this->assertEquals(null, $model->getScoringRepeatAfterDays(1));
|
190 |
+
}
|
191 |
+
|
192 |
+
public function testGetAllowedPaymentMethodsForScoringValueRed()
|
193 |
+
{
|
194 |
+
$model = $this->getConfigModel();
|
195 |
+
$this->assertEquals(
|
196 |
+
array(), $model->getAllowedPaymentMethodsForScoringValueRed()
|
197 |
+
);
|
198 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
199 |
+
Expercash_Scoring_Model_Config::SCORING_VALUE_RED_PATH .
|
200 |
+
'/allowed-payment-methods';
|
201 |
+
$allowPaymentMethods = array('credit card', 'direct debit');
|
202 |
+
$this->store->setConfig($path, serialize($allowPaymentMethods));
|
203 |
+
$this->assertEquals(
|
204 |
+
$allowPaymentMethods,
|
205 |
+
$model->getAllowedPaymentMethodsForScoringValueRed()
|
206 |
+
);
|
207 |
+
$this->assertEquals(
|
208 |
+
array(), $model->getAllowedPaymentMethodsForScoringValueRed(1)
|
209 |
+
);
|
210 |
+
}
|
211 |
+
|
212 |
+
public function testGetAllowedPaymentMethodsForScoringValueYellow()
|
213 |
+
{
|
214 |
+
$model = $this->getConfigModel();
|
215 |
+
$this->assertEquals(
|
216 |
+
array(), $model->getAllowedPaymentMethodsForScoringValueYellow()
|
217 |
+
);
|
218 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
219 |
+
Expercash_Scoring_Model_Config::SCORING_VALUE_YELLOW_PATH .
|
220 |
+
'/allowed-payment-methods';
|
221 |
+
$allowPaymentMethods = array('credit card', 'direct debit');
|
222 |
+
$this->store->setConfig($path, serialize($allowPaymentMethods));
|
223 |
+
$this->assertEquals(
|
224 |
+
$allowPaymentMethods,
|
225 |
+
$model->getAllowedPaymentMethodsForScoringValueYellow()
|
226 |
+
);
|
227 |
+
$this->assertEquals(
|
228 |
+
array(), $model->getAllowedPaymentMethodsForScoringValueYellow(1)
|
229 |
+
);
|
230 |
+
}
|
231 |
+
|
232 |
+
public function testGetAllowedPaymentMethodsForScoringValueGreen()
|
233 |
+
{
|
234 |
+
$model = $this->getConfigModel();
|
235 |
+
$this->assertEquals(
|
236 |
+
array(), $model->getAllowedPaymentMethodsForScoringValueGreen()
|
237 |
+
);
|
238 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
239 |
+
Expercash_Scoring_Model_Config::SCORING_VALUE_GREEN_PATH .
|
240 |
+
'/allowed-payment-methods';
|
241 |
+
$allowPaymentMethods = array('credit card', 'direct debit');
|
242 |
+
$this->store->setConfig($path, serialize($allowPaymentMethods));
|
243 |
+
$this->assertEquals(
|
244 |
+
$allowPaymentMethods,
|
245 |
+
$model->getAllowedPaymentMethodsForScoringValueGreen()
|
246 |
+
);
|
247 |
+
$this->assertEquals(
|
248 |
+
array(), $model->getAllowedPaymentMethodsForScoringValueGreen(1)
|
249 |
+
);
|
250 |
+
}
|
251 |
+
|
252 |
+
public function testGetAdditionalConditionForScoringValueGreen()
|
253 |
+
{
|
254 |
+
$model = $this->getConfigModel();
|
255 |
+
$this->assertEquals(
|
256 |
+
false, $model->getAdditionalConditionForScoringValueGreen()
|
257 |
+
);
|
258 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
259 |
+
Expercash_Scoring_Model_Config::SCORING_VALUE_GREEN_PATH .
|
260 |
+
'/additional-condition';
|
261 |
+
$cond
|
262 |
+
= Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_VALUE;
|
263 |
+
$this->store->setConfig($path, $cond);
|
264 |
+
$this->assertEquals(
|
265 |
+
$cond, $model->getAdditionalConditionForScoringValueGreen()
|
266 |
+
);
|
267 |
+
$this->assertEquals(
|
268 |
+
false, $model->getAdditionalConditionForScoringValueGreen(1)
|
269 |
+
);
|
270 |
+
}
|
271 |
+
|
272 |
+
public function testGetAdditionalConditionForScoringValueYellow()
|
273 |
+
{
|
274 |
+
$model = $this->getConfigModel();
|
275 |
+
$this->assertEquals(
|
276 |
+
false, $model->getAdditionalConditionForScoringValueYellow()
|
277 |
+
);
|
278 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
279 |
+
Expercash_Scoring_Model_Config::SCORING_VALUE_YELLOW_PATH .
|
280 |
+
'/additional-condition';
|
281 |
+
$cond
|
282 |
+
= Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_VALUE;
|
283 |
+
$this->store->setConfig($path, $cond);
|
284 |
+
$this->assertEquals(
|
285 |
+
$cond, $model->getAdditionalConditionForScoringValueYellow()
|
286 |
+
);
|
287 |
+
$this->assertEquals(
|
288 |
+
false, $model->getAdditionalConditionForScoringValueYellow(1)
|
289 |
+
);
|
290 |
+
}
|
291 |
+
|
292 |
+
public function testGetAllowedCountries()
|
293 |
+
{
|
294 |
+
$model = $this->getConfigModel();
|
295 |
+
$this->assertEquals(array('DE'), $model->getAllowedCountries());
|
296 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
297 |
+
Expercash_Scoring_Model_Config::GENERAL_PATH .
|
298 |
+
'/allowed-country';
|
299 |
+
$allowedCountries = array('DE');
|
300 |
+
$this->store->setConfig($path, serialize($allowedCountries));
|
301 |
+
$this->assertEquals($allowedCountries, $model->getAllowedCountries());
|
302 |
+
$this->assertEquals(array('DE'), $model->getAllowedCountries(1));
|
303 |
+
}
|
304 |
+
|
305 |
+
|
306 |
+
public function testGetAlwaysOfferTheFollowingPaymentMethods()
|
307 |
+
{
|
308 |
+
$model = $this->getConfigModel();
|
309 |
+
$this->assertEquals(
|
310 |
+
array(), $model->getAlwaysOfferTheFollowingPaymentMethods()
|
311 |
+
);
|
312 |
+
$path = Expercash_Scoring_Model_Config::SCORING_PATH . '/' .
|
313 |
+
Expercash_Scoring_Model_Config::SOLVENCY_PATH .
|
314 |
+
'/always-offer-the-following-payment-methods';
|
315 |
+
$allowPaymentMethods = array('credit card', 'direct debit');
|
316 |
+
$this->store->setConfig($path, serialize($allowPaymentMethods));
|
317 |
+
$this->assertEquals(
|
318 |
+
$allowPaymentMethods,
|
319 |
+
$model->getAlwaysOfferTheFollowingPaymentMethods()
|
320 |
+
);
|
321 |
+
$this->assertEquals(
|
322 |
+
array(), $model->getAlwaysOfferTheFollowingPaymentMethods(1)
|
323 |
+
);
|
324 |
+
}
|
325 |
+
|
326 |
+
public function testEventsAreDefined()
|
327 |
+
{
|
328 |
+
$this->assertEventObserverDefined(
|
329 |
+
'frontend', 'core_block_abstract_to_html_after',
|
330 |
+
'expercash_scoring/observer', 'appendAgreementToBilling'
|
331 |
+
);
|
332 |
+
$this->assertEventObserverDefined(
|
333 |
+
'frontend', 'controller_action_postdispatch',
|
334 |
+
'expercash_scoring/observer', 'performSolvencyCheck'
|
335 |
+
);
|
336 |
+
$this->assertEventObserverDefined(
|
337 |
+
'frontend', 'core_block_abstract_prepare_layout_before',
|
338 |
+
'expercash_scoring/observer', 'filterPaymentMethods'
|
339 |
+
);
|
340 |
+
$this->assertEventObserverDefined(
|
341 |
+
'frontend', 'checkout_submit_all_after',
|
342 |
+
'expercash_scoring/observer', 'setScoringValueToRegisteredUser'
|
343 |
+
);
|
344 |
+
}
|
345 |
+
}
|
346 |
+
|
app/code/community/Expercash/Scoring/Test/Model/Mysql4/Solvency/Check/Result/CollectionTest.php
ADDED
@@ -0,0 +1,229 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Model_Mysql4_Solvency_Check_Result_CollectionTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case_Controller
|
13 |
+
{
|
14 |
+
|
15 |
+
/**
|
16 |
+
* simulates guest checkout
|
17 |
+
*/
|
18 |
+
public function testGetLastEntryFromTheLastDaysDefault()
|
19 |
+
{
|
20 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_result')
|
21 |
+
->getCollection();
|
22 |
+
$quote = Mage::getModel('sales/quote');
|
23 |
+
$config = Mage::getModel('expercash_scoring/config');
|
24 |
+
$this->assertEquals(
|
25 |
+
null, $model->getLastEntryFromTheLastDays($quote, $config),
|
26 |
+
'default value for the last scoring value is null'
|
27 |
+
);
|
28 |
+
}
|
29 |
+
|
30 |
+
public function testGetLastEntryFromTheLastDaysDefaultDueToMissingDays()
|
31 |
+
{
|
32 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_result')
|
33 |
+
->getCollection();
|
34 |
+
$quote = Mage::getModel('sales/quote');
|
35 |
+
$customer = Mage::getModel('customer/customer');
|
36 |
+
$customer->setId(1);
|
37 |
+
$quote->setCustomer($customer);
|
38 |
+
$config = $this->getModelMock(
|
39 |
+
'expercash_scoring/config',
|
40 |
+
array('isScoringExpiringAfterDays', 'getScoringRepeatAfterDays')
|
41 |
+
);
|
42 |
+
$config->expects($this->any())
|
43 |
+
->method('isScoringExpiringAfterDays')
|
44 |
+
->will($this->returnValue(true));
|
45 |
+
$config->expects($this->any())
|
46 |
+
->method('getScoringRepeatAfterDays')
|
47 |
+
->will($this->returnValue('not numeric'));
|
48 |
+
$this->assertEquals(
|
49 |
+
null, $model->getLastEntryFromTheLastDays(
|
50 |
+
$quote, $config, 'not numeric days should lead to null value'
|
51 |
+
)
|
52 |
+
);
|
53 |
+
}
|
54 |
+
|
55 |
+
public function testGetLastEntryFromTheLastDaysWithResult()
|
56 |
+
{
|
57 |
+
$quote = Mage::getModel('sales/quote');
|
58 |
+
$quote->setId(1);
|
59 |
+
$quote->save();
|
60 |
+
/** @var $customer Mage_Customer_Model_Customer */
|
61 |
+
$customer = Mage::getModel('customer/customer');
|
62 |
+
$customer->setId(1);
|
63 |
+
$customer->setEmail('a@b.com');
|
64 |
+
$customer->save();
|
65 |
+
$now = new DateTime();
|
66 |
+
$checkResult = Mage::getModel(
|
67 |
+
'expercash_scoring/solvency_check_result'
|
68 |
+
);
|
69 |
+
$checkResult->setCheckResultId(1);
|
70 |
+
$checkResult->setQuoteId(1);
|
71 |
+
$checkResult->setCustomerId(1);
|
72 |
+
$checkResult->setEscore('Y');
|
73 |
+
$checkResult->setCreatedAt(
|
74 |
+
$now->sub(new DateInterval('P5D'))->format('Y-m-d')
|
75 |
+
);
|
76 |
+
$checkResult->save();
|
77 |
+
$now = new DateTime();
|
78 |
+
$anotherResult = Mage::getModel(
|
79 |
+
'expercash_scoring/solvency_check_result'
|
80 |
+
);
|
81 |
+
$anotherResult->setCheckResultId(2);
|
82 |
+
$anotherResult->setQuoteId(1);
|
83 |
+
$anotherResult->setCustomerId(1);
|
84 |
+
$anotherResult->setEscore('G');
|
85 |
+
$anotherResult->setCreatedAt(
|
86 |
+
$now->sub(new DateInterval('P3D'))->format('Y-m-d')
|
87 |
+
);
|
88 |
+
$anotherResult->save();
|
89 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_result')
|
90 |
+
->getCollection();
|
91 |
+
$quote = Mage::getModel('sales/quote');
|
92 |
+
|
93 |
+
$quote->setCustomer($customer);
|
94 |
+
$config = $this->getModelMock(
|
95 |
+
'expercash_scoring/config',
|
96 |
+
array('isScoringExpiringAfterDays', 'getScoringRepeatAfterDays')
|
97 |
+
);
|
98 |
+
$config->expects($this->any())
|
99 |
+
->method('isScoringExpiringAfterDays')
|
100 |
+
->will($this->returnValue(true));
|
101 |
+
$config->expects($this->any())
|
102 |
+
->method('getScoringRepeatAfterDays')
|
103 |
+
->will($this->returnValue(6));
|
104 |
+
$this->assertEquals(
|
105 |
+
'G', $model->getLastEntryFromTheLastDays(
|
106 |
+
$quote, $config, 'not numeric days should lead to null value'
|
107 |
+
)
|
108 |
+
);
|
109 |
+
$checkResult->delete();
|
110 |
+
$anotherResult->delete();
|
111 |
+
}
|
112 |
+
|
113 |
+
public function testGetLastEntryFromTheLastDaysWithNoResult()
|
114 |
+
{
|
115 |
+
$quote = Mage::getModel('sales/quote');
|
116 |
+
$quote->setId(1);
|
117 |
+
$quote->save();
|
118 |
+
/** @var $customer Mage_Customer_Model_Customer */
|
119 |
+
$customer = Mage::getModel('customer/customer');
|
120 |
+
$customer->setId(1);
|
121 |
+
$customer->setEmail('a@b.com');
|
122 |
+
$customer->save();
|
123 |
+
$now = new DateTime();
|
124 |
+
$checkResult = Mage::getModel(
|
125 |
+
'expercash_scoring/solvency_check_result'
|
126 |
+
);
|
127 |
+
$checkResult->setCheckResultId(1);
|
128 |
+
$checkResult->setQuoteId(1);
|
129 |
+
$checkResult->setCustomerId(1);
|
130 |
+
$checkResult->setEscore('Y');
|
131 |
+
$checkResult->setCreatedAt(
|
132 |
+
$now->sub(new DateInterval('P5D'))->format('Y-m-d')
|
133 |
+
);
|
134 |
+
$checkResult->save();
|
135 |
+
$now = new DateTime();
|
136 |
+
$anotherResult = Mage::getModel(
|
137 |
+
'expercash_scoring/solvency_check_result'
|
138 |
+
);
|
139 |
+
$anotherResult->setCheckResultId(2);
|
140 |
+
$anotherResult->setQuoteId(1);
|
141 |
+
$anotherResult->setCustomerId(1);
|
142 |
+
$anotherResult->setEscore('G');
|
143 |
+
$anotherResult->setCreatedAt(
|
144 |
+
$now->sub(new DateInterval('P3D'))->format('Y-m-d')
|
145 |
+
);
|
146 |
+
$anotherResult->save();
|
147 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_result')
|
148 |
+
->getCollection();
|
149 |
+
$quote = Mage::getModel('sales/quote');
|
150 |
+
|
151 |
+
$quote->setCustomer($customer);
|
152 |
+
$config = $this->getModelMock(
|
153 |
+
'expercash_scoring/config',
|
154 |
+
array('isScoringExpiringAfterDays', 'getScoringRepeatAfterDays')
|
155 |
+
);
|
156 |
+
$config->expects($this->any())
|
157 |
+
->method('isScoringExpiringAfterDays')
|
158 |
+
->will($this->returnValue(true));
|
159 |
+
$config->expects($this->any())
|
160 |
+
->method('getScoringRepeatAfterDays')
|
161 |
+
->will($this->returnValue(1));
|
162 |
+
$this->assertEquals(
|
163 |
+
null, $model->getLastEntryFromTheLastDays(
|
164 |
+
$quote, $config, 'not numeric days should lead to null value'
|
165 |
+
)
|
166 |
+
);
|
167 |
+
$checkResult->delete();
|
168 |
+
$anotherResult->delete();
|
169 |
+
$quote->delete();
|
170 |
+
}
|
171 |
+
|
172 |
+
public function testGetEntriesForCurrentDayWithoutEntries()
|
173 |
+
{
|
174 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_result')
|
175 |
+
->getCollection();
|
176 |
+
$this->assertEquals(0, $model->getEntriesForCurrentDay());
|
177 |
+
}
|
178 |
+
|
179 |
+
public function testGetEntriesForCurrentDay()
|
180 |
+
{
|
181 |
+
$quote = Mage::getModel('sales/quote');
|
182 |
+
$quote->setId(1);
|
183 |
+
$quote->save();
|
184 |
+
$now = new DateTime();
|
185 |
+
$checkResult = Mage::getModel(
|
186 |
+
'expercash_scoring/solvency_check_result'
|
187 |
+
);
|
188 |
+
$checkResult->setCheckResultId(1);
|
189 |
+
$checkResult->setQuoteId(1);
|
190 |
+
$checkResult->setEscore('R');
|
191 |
+
$checkResult->setCreatedAt(
|
192 |
+
$now->format('Y-m-d')
|
193 |
+
);
|
194 |
+
$checkResult->save();
|
195 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_result')
|
196 |
+
->getCollection();
|
197 |
+
$this->assertEquals(1, $model->getEntriesForCurrentDay());
|
198 |
+
$checkResult->delete();
|
199 |
+
$quote->delete();
|
200 |
+
}
|
201 |
+
|
202 |
+
/**
|
203 |
+
* @loadFixture checks.yaml
|
204 |
+
*/
|
205 |
+
public function testDelete()
|
206 |
+
{
|
207 |
+
$collection = Mage::getModel('expercash_scoring/solvency_check_result')
|
208 |
+
->getCollection()->load();
|
209 |
+
$oldCollectionCount = $collection->count();
|
210 |
+
Mage::getModel('expercash_scoring/solvency_check_result')
|
211 |
+
->deleteForCustomer(2);
|
212 |
+
$collection = Mage::getModel('expercash_scoring/solvency_check_result')
|
213 |
+
->getCollection()->load();
|
214 |
+
$this->assertEquals($oldCollectionCount, $collection->count());
|
215 |
+
|
216 |
+
Mage::getModel('expercash_scoring/solvency_check_result')
|
217 |
+
->deleteForCustomer(1, 1);
|
218 |
+
$collection = Mage::getModel('expercash_scoring/solvency_check_result')
|
219 |
+
->getCollection()->load();
|
220 |
+
$this->assertEquals($oldCollectionCount - 1, $collection->count());
|
221 |
+
|
222 |
+
Mage::getModel('expercash_scoring/solvency_check_result')
|
223 |
+
->deleteForCustomer(1);
|
224 |
+
$collection = Mage::getModel('expercash_scoring/solvency_check_result')
|
225 |
+
->getCollection()->load();
|
226 |
+
$this->assertEquals(0, $collection->count());
|
227 |
+
}
|
228 |
+
|
229 |
+
}
|
app/code/community/Expercash/Scoring/Test/Model/Mysql4/Solvency/Check/Result/CollectionTest/fixtures/checks.yaml
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
tables:
|
2 |
+
expercash_scoring/solvency_check_result:
|
3 |
+
- check_id: 1
|
4 |
+
customer_id: 1
|
5 |
+
escore: 'Y'
|
6 |
+
escore_feature: 'PAB'
|
7 |
+
creatd_at: '1970-01-01 00:00:00'
|
8 |
+
|
9 |
+
- check_id: 2
|
10 |
+
customer_id: 1
|
11 |
+
escore: 'Y'
|
12 |
+
escore_feature: 'PAB'
|
13 |
+
creatd_at: '1970-01-01 00:00:00'
|
14 |
+
|
15 |
+
- check_id: 3
|
16 |
+
customer_id: 1
|
17 |
+
escore: 'Y'
|
18 |
+
escore_feature: 'PAB'
|
19 |
+
creatd_at: '1970-01-01 00:00:00'
|
app/code/community/Expercash/Scoring/Test/Model/ObserverTest.php
ADDED
@@ -0,0 +1,124 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Model_ObserverTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case_Controller
|
13 |
+
{
|
14 |
+
|
15 |
+
public function testFilterPaymentMethods()
|
16 |
+
{
|
17 |
+
$checkoutSession = $this->getModelMock(
|
18 |
+
'checkout/session', array('init', 'save', 'getQuote')
|
19 |
+
);
|
20 |
+
$checkoutSession->expects($this->once())
|
21 |
+
->method('getQuote')
|
22 |
+
->will($this->returnValue(Mage::getModel('sales/quote')));
|
23 |
+
$this->replaceByMock('model', 'checkout/session', $checkoutSession);
|
24 |
+
|
25 |
+
$customerSession = $this->getModelMock(
|
26 |
+
'customer/session', array('init', 'save')
|
27 |
+
);
|
28 |
+
$this->replaceByMock('model', 'customer/session', $customerSession);
|
29 |
+
|
30 |
+
|
31 |
+
$block = new Mage_Payment_Block_Form_Container();
|
32 |
+
$block->setMethods(
|
33 |
+
array('checkmo' => 'checkmo', 'savedcc' => 'savedcc')
|
34 |
+
);
|
35 |
+
|
36 |
+
$configMock = $this->getModelMock(
|
37 |
+
'expercash_scoring/config', array('isActive')
|
38 |
+
);
|
39 |
+
$configMock->expects($this->once())
|
40 |
+
->method('isActive')
|
41 |
+
->will($this->returnValue(true));
|
42 |
+
$this->replaceByMock('model', 'expercash_scoring/config', $configMock);
|
43 |
+
|
44 |
+
$filterModelMock = $this->getModelMock(
|
45 |
+
'expercash_scoring/checkout_payment_methods_filter',
|
46 |
+
array('filterPaymentMethods')
|
47 |
+
);
|
48 |
+
$filterModelMock->expects($this->once())
|
49 |
+
->method('filterPaymentMethods')
|
50 |
+
->will($this->returnValue(array('checkmo' => 'checkmo')));
|
51 |
+
$this->replaceByMock(
|
52 |
+
'model', 'expercash_scoring/checkout_payment_methods_filter',
|
53 |
+
$filterModelMock
|
54 |
+
);
|
55 |
+
|
56 |
+
$eventData = new Varien_Object();
|
57 |
+
$eventData->setBlock($block);
|
58 |
+
$observer = Mage::getModel('expercash_scoring/observer');
|
59 |
+
$observer->filterPaymentMethods($eventData);
|
60 |
+
$this->assertEquals(1, count($block->getData('methods')));
|
61 |
+
$this->assertArrayHasKey('checkmo', $block->getData('methods'));
|
62 |
+
}
|
63 |
+
|
64 |
+
public function testSetScoringValueToRegisteredUser()
|
65 |
+
{
|
66 |
+
$checkoutSession = $this->getModelMock(
|
67 |
+
'checkout/session', array('save', 'getQuote')
|
68 |
+
);
|
69 |
+
$this->replaceByMock('checkout/session', 'model', $checkoutSession);
|
70 |
+
Mage::getSingleton('checkout/session')->setData('exp_scoring_id', 1);
|
71 |
+
$fakeResult = $this->getModelMock('expercash_scoring/solvency_check_result', array('setCustomerToScoringValue'));
|
72 |
+
$observerMock = $this->getModelMock('expercash_scoring/observer', array('getResultModel'));
|
73 |
+
$observerMock->expects($this->any())
|
74 |
+
->method('getResultModel')
|
75 |
+
->will($this->returnValue($fakeResult));
|
76 |
+
$checkoutSession = $this->getModelMock(
|
77 |
+
'checkout/session', array('save', 'getQuote')
|
78 |
+
);
|
79 |
+
$fakeOrder = new Varien_Object();
|
80 |
+
$fakeOrder->setCustomerId(1);
|
81 |
+
$event = new Varien_Object();
|
82 |
+
$event->setOrder($fakeOrder);
|
83 |
+
$observerMock->setScoringValueToRegisteredUser($event);
|
84 |
+
$this->assertEquals(null, Mage::getSingleton('checkout/session')->getData('exp_scoring_id'));
|
85 |
+
|
86 |
+
}
|
87 |
+
|
88 |
+
|
89 |
+
public function testAppendAgreementToBilling()
|
90 |
+
{
|
91 |
+
$sessionMock = $this->getModelMockBuilder('checkout/session')
|
92 |
+
->disableOriginalConstructor()
|
93 |
+
->setMethods(null)
|
94 |
+
->getMock();
|
95 |
+
$this->replaceByMock('singleton', 'checkout/session', $sessionMock);
|
96 |
+
$sessionMock = $this->getModelMockBuilder('customer/session')
|
97 |
+
->disableOriginalConstructor()
|
98 |
+
->setMethods(null)
|
99 |
+
->getMock();
|
100 |
+
$this->replaceByMock('singleton', 'customer/session', $sessionMock);
|
101 |
+
$transport = new Varien_Object();
|
102 |
+
$transport->setHtml('Transport');
|
103 |
+
$fakeConfigModel = $this->getModelMock('expercash_scoring/config', array('isActive'));
|
104 |
+
$fakeConfigModel->expects($this->any())
|
105 |
+
->method('isActive')
|
106 |
+
->will($this->returnValue(true));
|
107 |
+
$observer = $this->getModelMock('expercash_scoring/observer', array('getConfigModel'));
|
108 |
+
$observer->expects($this->any())
|
109 |
+
->method('getConfigModel')
|
110 |
+
->will($this->returnValue($fakeConfigModel));
|
111 |
+
$event = new Varien_Object();
|
112 |
+
$block = Mage::app()->getLayout()->getBlockSingleton('checkout/onepage_billing');
|
113 |
+
$blockMock = $this->getBlockMock('expercash_scoring/checkout_onepage_billing_agreement', array('renderView'));
|
114 |
+
$blockMock->expects($this->once())
|
115 |
+
->method('renderView')
|
116 |
+
->will($this->returnValue('<b>EXPERCASH</b>'));
|
117 |
+
$this->replaceByMock('block', 'expercash_scoring/checkout_onepage_billing_agreement', $blockMock);
|
118 |
+
$event->setBlock($block);
|
119 |
+
$event->setTransport($transport);
|
120 |
+
$observer->appendAgreementToBilling($event);
|
121 |
+
$this->assertEquals('Transport<b>EXPERCASH</b>', $transport->getHtml());
|
122 |
+
$this->assertNotEquals('<b>EXPERCASH</b>', $transport->getHtml());
|
123 |
+
}
|
124 |
+
}
|
app/code/community/Expercash/Scoring/Test/Model/Quote/Address/ValidationTest.php
ADDED
@@ -0,0 +1,71 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Model_Quote_Address_ValidationTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
/**
|
16 |
+
* @return Expercash_Scoring_Helper_Quote_Address_Validation
|
17 |
+
*/
|
18 |
+
protected function getValidationModel()
|
19 |
+
{
|
20 |
+
return Mage::getModel('expercash_scoring/quote_address_validation');
|
21 |
+
}
|
22 |
+
|
23 |
+
public function testIsValidCountry()
|
24 |
+
{
|
25 |
+
$address = Mage::getModel('sales/quote_address');
|
26 |
+
$model = $this->getValidationModel();
|
27 |
+
$this->assertFalse($model->isValidCountry($address));
|
28 |
+
$address->setAddressType(Mage_Sales_Model_Quote_Address::TYPE_SHIPPING);
|
29 |
+
$this->assertFalse($model->isValidCountry($address));
|
30 |
+
$address->setAddressType(Mage_Sales_Model_Quote_Address::TYPE_BILLING);
|
31 |
+
$this->assertFalse($model->isValidCountry($address));
|
32 |
+
$address->setCountry('US');
|
33 |
+
$this->assertFalse($model->isValidCountry($address));
|
34 |
+
$address->setCountry('DE');
|
35 |
+
$this->assertTrue($model->isValidCountry($address));
|
36 |
+
}
|
37 |
+
|
38 |
+
|
39 |
+
public function testHasTermsAndConditionsConfirmed()
|
40 |
+
{
|
41 |
+
$request = new Mage_Core_Controller_Request_Http();
|
42 |
+
$modelMock = $this->getModelMock(
|
43 |
+
'expercash_scoring/quote_address_validation',
|
44 |
+
array('isValidCountry')
|
45 |
+
);
|
46 |
+
$modelMock->expects($this->any())
|
47 |
+
->method('isValidCountry')
|
48 |
+
->will($this->returnValue(true));
|
49 |
+
$this->assertFalse(
|
50 |
+
$modelMock->hasTermsAndConditionsConfirmed($request)
|
51 |
+
);
|
52 |
+
$request->setParams(array('billing' => array('street' => 1)));
|
53 |
+
$this->assertFalse(
|
54 |
+
$modelMock->hasTermsAndConditionsConfirmed($request)
|
55 |
+
);
|
56 |
+
|
57 |
+
|
58 |
+
$request->setParams(
|
59 |
+
array(
|
60 |
+
'billing' => array(
|
61 |
+
'scoring_check_confirmation' => 'scoring_check_confirmation'
|
62 |
+
)
|
63 |
+
)
|
64 |
+
);
|
65 |
+
$this->assertTrue(
|
66 |
+
$modelMock->hasTermsAndConditionsConfirmed($request)
|
67 |
+
);
|
68 |
+
}
|
69 |
+
|
70 |
+
|
71 |
+
}
|
app/code/community/Expercash/Scoring/Test/Model/Quote/Amount/ValidationTest.php
ADDED
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ${MODULENAME}
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Model_Quote_Amount_ValidationTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
public function testHasMinAmount()
|
16 |
+
{
|
17 |
+
$quote = Mage::getModel('sales/quote');
|
18 |
+
$fakeConfig = $this->getModelMock(
|
19 |
+
'expercash_scoring/config', array('getTotalMin')
|
20 |
+
);
|
21 |
+
$fakeConfig->expects($this->any())
|
22 |
+
->method('getTotalMin')
|
23 |
+
->will($this->returnValue(null));
|
24 |
+
$quote->setBaseGrandTotal(5000.01);
|
25 |
+
$this->assertTrue(
|
26 |
+
Mage::getModel('expercash_scoring/quote_amount_validation')
|
27 |
+
->hasQuoteMinAmount($quote)
|
28 |
+
);
|
29 |
+
|
30 |
+
$modelMock = $this->getModelMock(
|
31 |
+
'expercash_scoring/quote_amount_validation', array('getConfigModel')
|
32 |
+
);
|
33 |
+
$fakeConfig = $this->getModelMock(
|
34 |
+
'expercash_scoring/config', array('getTotalMin')
|
35 |
+
);
|
36 |
+
$fakeConfig->expects($this->any())
|
37 |
+
->method('getTotalMin')
|
38 |
+
->will($this->returnValue(5000));
|
39 |
+
$quote->setBaseGrandTotal(5000.01);
|
40 |
+
|
41 |
+
$modelMock->expects($this->any())
|
42 |
+
->method('getConfigModel')
|
43 |
+
->will($this->returnValue($fakeConfig));
|
44 |
+
$this->assertTrue($modelMock->hasQuoteMinAmount($quote));
|
45 |
+
|
46 |
+
$quote->setBaseGrandTotal(4999.99);
|
47 |
+
$this->assertFalse($modelMock->hasQuoteMinAmount($quote));
|
48 |
+
}
|
49 |
+
|
50 |
+
}
|
app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ClientTest.php
ADDED
@@ -0,0 +1,62 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ExperCash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Model_Solvency_Check_ClientTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
public function testPostRequestSuccessful()
|
16 |
+
{
|
17 |
+
$response = new Varien_Object();
|
18 |
+
$response->setBody('test Response');
|
19 |
+
$fakeClient = $this->getMock('Varien_Http_Client', array('request'));
|
20 |
+
$fakeClient->expects($this->any())
|
21 |
+
->method('request')
|
22 |
+
->will($this->returnValue($response));
|
23 |
+
$clientModel = Mage::getModel(
|
24 |
+
'expercash_scoring/solvency_check_client'
|
25 |
+
);
|
26 |
+
$clientModel->setClient($fakeClient);
|
27 |
+
$this->assertEquals(
|
28 |
+
'test Response', $clientModel->postRequest(array())
|
29 |
+
);
|
30 |
+
}
|
31 |
+
|
32 |
+
public function testPostRequestRaiseException()
|
33 |
+
{
|
34 |
+
$response = new Varien_Object();
|
35 |
+
$response->setBody('test Response');
|
36 |
+
$fakeClient = $this->getMock('Varien_Http_Client', array('request'));
|
37 |
+
$fakeClient->expects($this->any())
|
38 |
+
->method('request')
|
39 |
+
->will(
|
40 |
+
$this->throwException(new Exception('fake network problem'))
|
41 |
+
);
|
42 |
+
$clientModel = Mage::getModel(
|
43 |
+
'expercash_scoring/solvency_check_client'
|
44 |
+
);
|
45 |
+
$clientModel->setClient($fakeClient);
|
46 |
+
try {
|
47 |
+
$clientModel->postRequest(array());
|
48 |
+
} catch (Exception $e) {
|
49 |
+
$this->assertEquals(
|
50 |
+
Mage::helper('expercash_scoring/data')->__(
|
51 |
+
'Gateway request error: %s', 'fake network problem'
|
52 |
+
), $e->getMessage()
|
53 |
+
);
|
54 |
+
}
|
55 |
+
}
|
56 |
+
|
57 |
+
public function testGetClient()
|
58 |
+
{
|
59 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_client');
|
60 |
+
$this->assertTrue($model->getClient() instanceof Varien_Http_Client);
|
61 |
+
}
|
62 |
+
}
|
app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest.php
ADDED
@@ -0,0 +1,111 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ${MODULENAME}
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Model_Solvency_Check_ResponseTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
protected function getXml($fileName)
|
16 |
+
{
|
17 |
+
$fileName
|
18 |
+
= __DIR__ . DS . 'ResponseTest' . DS . 'TestFiles' . DS . $fileName;
|
19 |
+
if (!file_exists($fileName)) {
|
20 |
+
throw new Exception($fileName . ' does not exist!');
|
21 |
+
}
|
22 |
+
if (!is_readable($fileName)) {
|
23 |
+
throw new Exception($fileName . ' is not readable!');
|
24 |
+
}
|
25 |
+
|
26 |
+
return file_get_contents($fileName);
|
27 |
+
}
|
28 |
+
|
29 |
+
public function testParseResponseThrowsException()
|
30 |
+
{
|
31 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_response');
|
32 |
+
try {
|
33 |
+
$model->parseResponse('');
|
34 |
+
} catch (Exception $e) {
|
35 |
+
$message = Mage::helper('expercash_scoring/data')->__(
|
36 |
+
'Error while transforming response to simple xml.'
|
37 |
+
);
|
38 |
+
$this->assertEquals($message, $e->getMessage());
|
39 |
+
}
|
40 |
+
try {
|
41 |
+
$model->parseResponse('kein xml');
|
42 |
+
} catch (Exception $e) {
|
43 |
+
$message = Mage::helper('expercash_scoring/data')->__(
|
44 |
+
'Error while transforming response to simple xml.'
|
45 |
+
);
|
46 |
+
$this->assertEquals($message, $e->getMessage());
|
47 |
+
}
|
48 |
+
try {
|
49 |
+
$model->parseResponse("<foo>auch kein xml</foo>");
|
50 |
+
} catch (Exception $e) {
|
51 |
+
$message = Mage::helper('expercash_scoring/data')->__(
|
52 |
+
'Invalid response due to technical problem!'
|
53 |
+
);
|
54 |
+
$this->assertEquals($message, $e->getMessage());
|
55 |
+
}
|
56 |
+
}
|
57 |
+
|
58 |
+
public function testParseResponseFailsDueToInvalidResponse()
|
59 |
+
{
|
60 |
+
$xml = $this->getXml('InvalidResponse.xml');
|
61 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_response');
|
62 |
+
try {
|
63 |
+
$model->parseResponse($xml);
|
64 |
+
} catch (Exception $e) {
|
65 |
+
$this->assertEquals(
|
66 |
+
Mage::helper('expercash_scoring/data')->__(
|
67 |
+
'Invalid response due to technical problem!'
|
68 |
+
), $e->getMessage()
|
69 |
+
);
|
70 |
+
}
|
71 |
+
}
|
72 |
+
|
73 |
+
public function testParseResponseSuccessful()
|
74 |
+
{
|
75 |
+
$xml = $this->getXml('CompleteSuccessfulResponse.xml');
|
76 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_response');
|
77 |
+
$result = $model->parseResponse($xml);
|
78 |
+
$this->assertTrue(is_array($result));
|
79 |
+
$this->assertArrayHasKey('escore', $result);
|
80 |
+
$this->assertArrayHasKey('escore_feature', $result);
|
81 |
+
}
|
82 |
+
|
83 |
+
public function testParseResponseSuccessfulButMissingEscore()
|
84 |
+
{
|
85 |
+
$xml = $this->getXml('SuccessfulResponseMissingEscore.xml');
|
86 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_response');
|
87 |
+
$result = $model->parseResponse($xml);
|
88 |
+
$this->assertTrue(is_array($result));
|
89 |
+
$this->assertArrayNotHasKey('escore', $result);
|
90 |
+
$this->assertArrayHasKey('escore_feature', $result);
|
91 |
+
}
|
92 |
+
|
93 |
+
public function testParseResponseSuccessfulButMissingEscoreFeature()
|
94 |
+
{
|
95 |
+
$xml = $this->getXml('SuccessfulResponseMissingEscoreFeature.xml');
|
96 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_response');
|
97 |
+
$result = $model->parseResponse($xml);
|
98 |
+
$this->assertTrue(is_array($result));
|
99 |
+
$this->assertArrayHasKey('escore', $result);
|
100 |
+
$this->assertArrayNotHasKey('escore_feature', $result);
|
101 |
+
}
|
102 |
+
public function testParseResponseSuccessfulRemoveEscoreScoring()
|
103 |
+
{
|
104 |
+
$xml = $this->getXml('SuccessfulResponseEscoreScoring.xml');
|
105 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_response');
|
106 |
+
$result = $model->parseResponse($xml);
|
107 |
+
$this->assertTrue(is_array($result));
|
108 |
+
$this->assertArrayHasKey('escore', $result);
|
109 |
+
$this->assertArrayNotHasKey('escore_scoring', $result);
|
110 |
+
}
|
111 |
+
}
|
app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest/TestFiles/CompleteSuccessfulResponse.xml
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2 |
+
<!DOCTYPE epixml PUBLIC "easyDebit/epi/DTD" "http://epi.easydebit.net/epi.dtd">
|
3 |
+
<epixml>
|
4 |
+
<rc>100</rc>
|
5 |
+
<rctext>Transaction successful</rctext>
|
6 |
+
<taid>00000000000004594228</taid>
|
7 |
+
<escore>G</escore>
|
8 |
+
<escore_feature>PPB</escore_feature>
|
9 |
+
</epixml>
|
app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest/TestFiles/InvalidResponse.xml
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2 |
+
<!DOCTYPE epixml PUBLIC "easyDebit/epi/DTD" "http://epi.easydebit.net/epi.dtd">
|
3 |
+
<epixml>
|
4 |
+
<rc>900</rc>
|
5 |
+
<rctext>Transaction failed</rctext>
|
6 |
+
<taid>00000000000004594228</taid>
|
7 |
+
<escore>G</escore>
|
8 |
+
<escore_feature>PPB</escore_feature>
|
9 |
+
</epixml>
|
app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest/TestFiles/SuccessfulResponseEscoreScoring.xml
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2 |
+
<!DOCTYPE epixml PUBLIC "easyDebit/epi/DTD" "http://epi.easydebit.net/epi.dtd">
|
3 |
+
<epixml>
|
4 |
+
<rc>100</rc>
|
5 |
+
<rctext>Transaction successful</rctext>
|
6 |
+
<taid>00000000000004594228</taid>
|
7 |
+
<escore_feature>PPB</escore_feature>
|
8 |
+
<escore>Y</escore>
|
9 |
+
<escore_scoring>666</escore_scoring>
|
10 |
+
</epixml>
|
app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest/TestFiles/SuccessfulResponseMissingEscore.xml
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2 |
+
<!DOCTYPE epixml PUBLIC "easyDebit/epi/DTD" "http://epi.easydebit.net/epi.dtd">
|
3 |
+
<epixml>
|
4 |
+
<rc>100</rc>
|
5 |
+
<rctext>Transaction successful</rctext>
|
6 |
+
<taid>00000000000004594228</taid>
|
7 |
+
<escore_feature>PPB</escore_feature>
|
8 |
+
</epixml>
|
app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResponseTest/TestFiles/SuccessfulResponseMissingEscoreFeature.xml
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2 |
+
<!DOCTYPE epixml PUBLIC "easyDebit/epi/DTD" "http://epi.easydebit.net/epi.dtd">
|
3 |
+
<epixml>
|
4 |
+
<rc>100</rc>
|
5 |
+
<rctext>Transaction successful</rctext>
|
6 |
+
<taid>00000000000004594228</taid>
|
7 |
+
<escore>G</escore>
|
8 |
+
</epixml>
|
app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResultTest.php
ADDED
@@ -0,0 +1,239 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ExperCash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Model_Solvency_Check_ResultTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
public function testSetScoringData()
|
16 |
+
{
|
17 |
+
$quote = Mage::getModel('sales/quote');
|
18 |
+
$quote->setId(1);
|
19 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_result');
|
20 |
+
$model->setScoringData($quote, array());
|
21 |
+
$this->assertEquals($quote->getId(), $model->getQuoteId());
|
22 |
+
$this->assertEquals(null, $model->getCustomerId());
|
23 |
+
|
24 |
+
$fakeCustomer = Mage::getModel('customer/customer');
|
25 |
+
$fakeCustomer->setId(1);
|
26 |
+
$quote->setCustomer($fakeCustomer);
|
27 |
+
|
28 |
+
$model->setScoringData($quote, array());
|
29 |
+
$this->assertEquals($quote->getId(), $model->getQuoteId());
|
30 |
+
$this->assertEquals($fakeCustomer->getId(), $model->getCustomerId());
|
31 |
+
$this->assertEquals(null, $model->getEscore());
|
32 |
+
|
33 |
+
$model->setScoringData($quote, array('escore' => 'Y'));
|
34 |
+
$this->assertEquals($quote->getId(), $model->getQuoteId());
|
35 |
+
$this->assertEquals($fakeCustomer->getId(), $model->getCustomerId());
|
36 |
+
$this->assertEquals(null, $model->getEscoreFeature());
|
37 |
+
$this->assertEquals('Y', $model->getEscore());
|
38 |
+
|
39 |
+
$model->setScoringData(
|
40 |
+
$quote, array('escore' => 'Y', 'escore_feature' => 'PAB')
|
41 |
+
);
|
42 |
+
$this->assertEquals($quote->getId(), $model->getQuoteId());
|
43 |
+
$this->assertEquals($fakeCustomer->getId(), $model->getCustomerId());
|
44 |
+
$this->assertEquals('PAB', $model->getEscoreFeature());
|
45 |
+
$this->assertEquals('Y', $model->getEscore());
|
46 |
+
|
47 |
+
$model->setScoringData(
|
48 |
+
$quote, array(
|
49 |
+
'escore' => 'Y', 'escore_feature' => 'PAB',
|
50 |
+
'escore_value' => 3.0
|
51 |
+
)
|
52 |
+
);
|
53 |
+
$this->assertEquals($quote->getId(), $model->getQuoteId());
|
54 |
+
$this->assertEquals($fakeCustomer->getId(), $model->getCustomerId());
|
55 |
+
$this->assertEquals('PAB', $model->getEscoreFeature());
|
56 |
+
$this->assertEquals('Y', $model->getEscore());
|
57 |
+
$this->assertEquals(3.0, $model->getEscoreValue());
|
58 |
+
}
|
59 |
+
|
60 |
+
|
61 |
+
public function testSetAddressData()
|
62 |
+
{
|
63 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_result');
|
64 |
+
$model->setAddressData(array());
|
65 |
+
$this->assertEquals(null, $model->getCustomerAddress1());
|
66 |
+
$streetTooLong
|
67 |
+
= '1234567890123456789012345678901234567890123456789012345678901234567890';
|
68 |
+
$model->setAddressData(array('customer_address1' => $streetTooLong));
|
69 |
+
$this->assertEquals(null, $model->getCustomerAddress1());
|
70 |
+
$model->setAddressData(array('customer_address1' => 'Nonnenstr.'));
|
71 |
+
$this->assertEquals('Nonnenstr.', $model->getCustomerAddress1());
|
72 |
+
$this->assertEquals(null, $model->getCustomerAddress2());
|
73 |
+
|
74 |
+
$model->setAddressData(
|
75 |
+
array(
|
76 |
+
'customer_address1' => 'Nonnenstr.',
|
77 |
+
'customer_address2' => '1234567'
|
78 |
+
)
|
79 |
+
);
|
80 |
+
$this->assertEquals('Nonnenstr.', $model->getCustomerAddress1());
|
81 |
+
$this->assertEquals(null, $model->getCustomerAddress2());
|
82 |
+
$model->setAddressData(
|
83 |
+
array(
|
84 |
+
'customer_address1' => 'Nonnenstr.',
|
85 |
+
'customer_address2' => '11d'
|
86 |
+
)
|
87 |
+
);
|
88 |
+
$this->assertEquals('11d', $model->getCustomerAddress2());
|
89 |
+
$this->assertEquals(null, $model->getCustomerZip());
|
90 |
+
$model->setAddressData(
|
91 |
+
array(
|
92 |
+
'customer_address1' => 'Nonnenstr.',
|
93 |
+
'customer_address2' => '11d', 'customer_zip' => '12345678901'
|
94 |
+
)
|
95 |
+
);
|
96 |
+
$this->assertEquals('11d', $model->getCustomerAddress2());
|
97 |
+
$this->assertEquals(null, $model->getCustomerZip());
|
98 |
+
$model->setAddressData(
|
99 |
+
array(
|
100 |
+
'customer_address1' => 'Nonnenstr.',
|
101 |
+
'customer_address2' => '11d', 'customer_zip' => '04229'
|
102 |
+
)
|
103 |
+
);
|
104 |
+
$this->assertEquals('04229', $model->getCustomerZip());
|
105 |
+
$this->assertEquals(null, $model->getCustomerCity());
|
106 |
+
$cityNameTooLong = '0123456789012345678901234567891234';
|
107 |
+
$model->setAddressData(
|
108 |
+
array(
|
109 |
+
'customer_address1' => 'Nonnenstr.',
|
110 |
+
'customer_address2' => '11d', 'customer_zip' => '04229',
|
111 |
+
'customer_city' => $cityNameTooLong
|
112 |
+
)
|
113 |
+
);
|
114 |
+
$this->assertEquals('04229', $model->getCustomerZip());
|
115 |
+
$this->assertEquals(null, $model->getCustomerCity());
|
116 |
+
$model->setAddressData(
|
117 |
+
array(
|
118 |
+
'customer_address1' => 'Nonnenstr.',
|
119 |
+
'customer_address2' => '11d', 'customer_zip' => '04229',
|
120 |
+
'customer_city' => 'Leipzig'
|
121 |
+
)
|
122 |
+
);
|
123 |
+
$this->assertEquals('Leipzig', $model->getCustomerCity());
|
124 |
+
$this->assertEquals(null, $model->getCustomerCountry());
|
125 |
+
$model->setAddressData(
|
126 |
+
array(
|
127 |
+
'customer_address1' => 'Nonnenstr.',
|
128 |
+
'customer_address2' => '11d', 'customer_zip' => '04229',
|
129 |
+
'customer_city' => 'Leipzig', 'customer_country' => '123'
|
130 |
+
)
|
131 |
+
);
|
132 |
+
$this->assertEquals('Leipzig', $model->getCustomerCity());
|
133 |
+
$this->assertEquals(null, $model->getCustomerCountry());
|
134 |
+
$model->setAddressData(
|
135 |
+
array(
|
136 |
+
'customer_address1' => 'Nonnenstr.',
|
137 |
+
'customer_address2' => '11d', 'customer_zip' => '04229',
|
138 |
+
'customer_city' => 'Leipzig', 'customer_country' => 'DE'
|
139 |
+
)
|
140 |
+
);
|
141 |
+
$this->assertEquals('Leipzig', $model->getCustomerCity());
|
142 |
+
$this->assertEquals('DE', $model->getCustomerCountry());
|
143 |
+
|
144 |
+
}
|
145 |
+
|
146 |
+
public function testSetCustomerData()
|
147 |
+
{
|
148 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_result');
|
149 |
+
$model->setCustomerData(array());
|
150 |
+
$this->assertEquals(null, $model->getCustomerGender());
|
151 |
+
$model->setCustomerData(array('customer_gender' => 'mm'));
|
152 |
+
$this->assertEquals(null, $model->getCustomerGender());
|
153 |
+
$model->setCustomerData(array('customer_gender' => 'm'));
|
154 |
+
$this->assertEquals('m', $model->getCustomerGender());
|
155 |
+
$this->assertEquals(null, $model->getCustomerPrename());
|
156 |
+
$nameTooLong
|
157 |
+
= '012345678901234567890123456789012345678901234567890123456789123456';
|
158 |
+
$model->setCustomerData(
|
159 |
+
array('customer_gender' => 'm', 'customer_prename' => $nameTooLong)
|
160 |
+
);
|
161 |
+
$this->assertEquals('m', $model->getCustomerGender());
|
162 |
+
$this->assertEquals(null, $model->getCustomerPrename());
|
163 |
+
$model->setCustomerData(
|
164 |
+
array('customer_gender' => 'm', 'customer_prename' => 'Max')
|
165 |
+
);
|
166 |
+
$this->assertEquals('m', $model->getCustomerGender());
|
167 |
+
$this->assertEquals('Max', $model->getCustomerPrename());
|
168 |
+
$model->setCustomerData(
|
169 |
+
array('customer_gender' => 'm', 'customer_name' => $nameTooLong)
|
170 |
+
);
|
171 |
+
$this->assertEquals('m', $model->getCustomerGender());
|
172 |
+
$this->assertEquals('Max', $model->getCustomerPrename());
|
173 |
+
$this->assertEquals(null, $model->getCustomerName());
|
174 |
+
$model->setCustomerData(
|
175 |
+
array('customer_gender' => 'm', 'customer_name' => 'Power')
|
176 |
+
);
|
177 |
+
$this->assertEquals('m', $model->getCustomerGender());
|
178 |
+
$this->assertEquals('Max', $model->getCustomerPrename());
|
179 |
+
$this->assertEquals('Power', $model->getCustomerName());
|
180 |
+
$this->assertEquals(null, $model->getCustomerDateOfBirth());
|
181 |
+
$model->setCustomerData(
|
182 |
+
array(
|
183 |
+
'customer_gender' => 'm', 'customer_name' => 'Power',
|
184 |
+
'customer_date_of_birth' => 'abcdef'
|
185 |
+
)
|
186 |
+
);
|
187 |
+
$this->assertEquals('m', $model->getCustomerGender());
|
188 |
+
$this->assertEquals('Max', $model->getCustomerPrename());
|
189 |
+
$this->assertEquals('Power', $model->getCustomerName());
|
190 |
+
$this->assertEquals(null, $model->getCustomerDateOfBirth());
|
191 |
+
$model->setCustomerData(
|
192 |
+
array(
|
193 |
+
'customer_gender' => 'm', 'customer_name' => 'Power',
|
194 |
+
'customer_date_of_birth' => '123'
|
195 |
+
)
|
196 |
+
);
|
197 |
+
$this->assertEquals('m', $model->getCustomerGender());
|
198 |
+
$this->assertEquals('Max', $model->getCustomerPrename());
|
199 |
+
$this->assertEquals('Power', $model->getCustomerName());
|
200 |
+
$this->assertEquals(null, $model->getCustomerDateOfBirth());
|
201 |
+
$model->setCustomerData(
|
202 |
+
array(
|
203 |
+
'customer_gender' => 'm', 'customer_name' => 'Power',
|
204 |
+
'customer_date_of_birth' => '19900101'
|
205 |
+
)
|
206 |
+
);
|
207 |
+
$this->assertEquals('m', $model->getCustomerGender());
|
208 |
+
$this->assertEquals('Max', $model->getCustomerPrename());
|
209 |
+
$this->assertEquals('Power', $model->getCustomerName());
|
210 |
+
$this->assertEquals('1990-01-01', $model->getCustomerDateOfBirth());
|
211 |
+
|
212 |
+
}
|
213 |
+
|
214 |
+
|
215 |
+
/**
|
216 |
+
* @loadFixture solvency_check_result
|
217 |
+
*/
|
218 |
+
public function testSetCustomerIdToScoringValue()
|
219 |
+
{
|
220 |
+
$model = Mage::getModel('expercash_scoring/solvency_check_result');
|
221 |
+
$model->setCustomerToScoringValue(null, null);
|
222 |
+
$model->load(null);
|
223 |
+
$this->assertEquals(null, $model->getCustomerId());
|
224 |
+
|
225 |
+
$model->setCustomerToScoringValue(0, null);
|
226 |
+
$model->load(0);
|
227 |
+
$this->assertEquals(null, $model->getCustomerId());
|
228 |
+
|
229 |
+
$model->setCustomerToScoringValue(1, null);
|
230 |
+
$model->load(1);
|
231 |
+
$this->assertEquals(null, $model->getCustomerId());
|
232 |
+
|
233 |
+
$model->setCustomerToScoringValue(1, 1);
|
234 |
+
$model->load(1);
|
235 |
+
$this->assertEquals(1, $model->getCustomerId());
|
236 |
+
|
237 |
+
|
238 |
+
}
|
239 |
+
}
|
app/code/community/Expercash/Scoring/Test/Model/Solvency/Check/ResultTest/fixtures/solvency_check_result.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
tables:
|
2 |
+
expercash_scoring/solvency_check_result:
|
3 |
+
- check_id: 1
|
4 |
+
customer_id: null
|
5 |
+
escore: 'Y'
|
6 |
+
escore_feature: 'PAB'
|
7 |
+
creatd_at: '1970-01-01 00:00:00'
|
app/code/community/Expercash/Scoring/Test/Model/Solvency/CheckTest.php
ADDED
@@ -0,0 +1,1473 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Test_Model_Solvency_CheckTest
|
12 |
+
extends EcomDev_PHPUnit_Test_Case
|
13 |
+
{
|
14 |
+
|
15 |
+
/**
|
16 |
+
* max checks per day exceeded, use default as scoring
|
17 |
+
*/
|
18 |
+
public function testPerformSolvencyCheckWithoutRequest()
|
19 |
+
{
|
20 |
+
$request = new Mage_Core_Controller_Request_Http();
|
21 |
+
$validationModelMock = $this->getModelMock(
|
22 |
+
'expercash_scoring/quote_address_validation',
|
23 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
24 |
+
);
|
25 |
+
$validationModelMock->expects($this->any())
|
26 |
+
->method('isValidCountry')
|
27 |
+
->will($this->returnValue(true));
|
28 |
+
$validationModelMock->expects($this->any())
|
29 |
+
->method('hasTermsAndConditionsConfirmed')
|
30 |
+
->will($this->returnValue(true));
|
31 |
+
$configMock = $this->getModelMock(
|
32 |
+
'expercash_scoring/config',
|
33 |
+
array(
|
34 |
+
'getMaxNumberOfChecksPerDay', 'getDefaultScoringForDayCount',
|
35 |
+
'getSkipForCustomerGroups'
|
36 |
+
)
|
37 |
+
);
|
38 |
+
$configMock->expects($this->any())
|
39 |
+
->method('getMaxNumberOfChecksPerDay')
|
40 |
+
->will($this->returnValue(1));
|
41 |
+
$configMock->expects($this->any())
|
42 |
+
->method('getDefaultScoringForDayCount')
|
43 |
+
->will($this->returnValue('Y'));
|
44 |
+
$configMock->expects($this->any())
|
45 |
+
->method('getSkipForCustomerGroups')
|
46 |
+
->will($this->returnValue(array()));
|
47 |
+
$fakeCollection = new Varien_Object();
|
48 |
+
$fakeCollection->setEntriesForCurrentDay(2);
|
49 |
+
$fakeResultModel = new Varien_Object();
|
50 |
+
$fakeResultModel->setCollection($fakeCollection);
|
51 |
+
$checkMock = $this->getModelMock(
|
52 |
+
'expercash_scoring/solvency_check',
|
53 |
+
array(
|
54 |
+
'getAddressValidationModel', 'getConfigModel',
|
55 |
+
'getResultModel',
|
56 |
+
'getCheckoutSession', 'saveSolvencyResult'
|
57 |
+
)
|
58 |
+
);
|
59 |
+
$checkMock->expects($this->any())
|
60 |
+
->method('getAddressValidationModel')
|
61 |
+
->will($this->returnValue($validationModelMock));
|
62 |
+
$checkMock->expects($this->any())
|
63 |
+
->method('getConfigModel')
|
64 |
+
->will($this->returnValue($configMock));
|
65 |
+
$checkMock->expects($this->any())
|
66 |
+
->method('getResultModel')
|
67 |
+
->will($this->returnValue($fakeResultModel));
|
68 |
+
$checkMock->expects($this->any())
|
69 |
+
->method('getCheckoutSession')
|
70 |
+
->will($this->returnValue(new Varien_Object()));
|
71 |
+
$quote = Mage::getModel('sales/quote');
|
72 |
+
$quote->setCustomerGroupId(1);
|
73 |
+
$this->assertEquals(
|
74 |
+
'Y', $checkMock->performSolvencyCheck($quote, $request)
|
75 |
+
);
|
76 |
+
}
|
77 |
+
|
78 |
+
public function testPerformSolvencyCheckWithRequest()
|
79 |
+
{
|
80 |
+
$validationModelMock = $this->getModelMock(
|
81 |
+
'expercash_scoring/quote_address_validation',
|
82 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
83 |
+
);
|
84 |
+
$request = new Mage_Core_Controller_Request_Http();
|
85 |
+
$validationModelMock->expects($this->any())
|
86 |
+
->method('isValidCountry')
|
87 |
+
->will($this->returnValue(true));
|
88 |
+
$validationModelMock->expects($this->any())
|
89 |
+
->method('hasTermsAndConditionsConfirmed')
|
90 |
+
->will($this->returnValue(true));
|
91 |
+
$configMock = $this->getModelMock(
|
92 |
+
'expercash_scoring/config',
|
93 |
+
array(
|
94 |
+
'getMaxNumberOfChecksPerDay', 'getDefaultScoringForDayCount',
|
95 |
+
'getSkipForCustomerGroups'
|
96 |
+
)
|
97 |
+
);
|
98 |
+
$configMock->expects($this->any())
|
99 |
+
->method('getMaxNumberOfChecksPerDay')
|
100 |
+
->will($this->returnValue(3));
|
101 |
+
$configMock->expects($this->any())
|
102 |
+
->method('getDefaultScoringForDayCount')
|
103 |
+
->will($this->returnValue('Y'));
|
104 |
+
$configMock->expects($this->any())
|
105 |
+
->method('getSkipForCustomerGroups')
|
106 |
+
->will($this->returnValue(array()));
|
107 |
+
$fakeCollection = new Varien_Object();
|
108 |
+
$fakeCollection->setEntriesForCurrentDay(2);
|
109 |
+
$fakeResultModel = new Varien_Object();
|
110 |
+
$fakeResultModel->setCollection($fakeCollection);
|
111 |
+
$checkMock = $this->getModelMock(
|
112 |
+
'expercash_scoring/solvency_check',
|
113 |
+
array(
|
114 |
+
'getAddressValidationModel', 'getConfigModel',
|
115 |
+
'getResultModel',
|
116 |
+
'getParamsAdapter', 'getSolvencyCheckClient',
|
117 |
+
'getSolvencyCheckResponse', 'saveSolvencyResult',
|
118 |
+
'getCheckoutSession'
|
119 |
+
)
|
120 |
+
);
|
121 |
+
$checkMock->expects($this->any())
|
122 |
+
->method('getAddressValidationModel')
|
123 |
+
->will($this->returnValue($validationModelMock));
|
124 |
+
$checkMock->expects($this->any())
|
125 |
+
->method('getConfigModel')
|
126 |
+
->will($this->returnValue($configMock));
|
127 |
+
$checkMock->expects($this->any())
|
128 |
+
->method('getResultModel')
|
129 |
+
->will($this->returnValue($fakeResultModel));
|
130 |
+
$checkMock->expects($this->any())
|
131 |
+
->method('getCheckoutSession')
|
132 |
+
->will($this->returnValue(new Varien_Object()));
|
133 |
+
|
134 |
+
$quote = Mage::getModel('sales/quote');
|
135 |
+
|
136 |
+
$fakeResponse = $this->getModelMock(
|
137 |
+
'expercash_scoring/solvency_check_response', array('parseResponse')
|
138 |
+
);
|
139 |
+
$fakeResponse->expects($this->any())
|
140 |
+
->method('parseResponse')
|
141 |
+
->will($this->returnValue(array('escore' => 'R')));
|
142 |
+
|
143 |
+
$fakeAdapter = $this->getHelperMock(
|
144 |
+
'expercash_scoring/request_params_adapter', array('convert')
|
145 |
+
);
|
146 |
+
$fakeAdapter->expects($this->any())
|
147 |
+
->method('convert')
|
148 |
+
->will($this->returnValue(array()));
|
149 |
+
|
150 |
+
$checkMock->expects($this->any())
|
151 |
+
->method('getParamsAdapter')
|
152 |
+
->will($this->returnValue($fakeAdapter));
|
153 |
+
|
154 |
+
$fakeClient = $this->getModelMock(
|
155 |
+
'expercash_scoring/solvency_check_client', array('postRequest')
|
156 |
+
);
|
157 |
+
$fakeClient->expects($this->any())
|
158 |
+
->method('postRequest')
|
159 |
+
->will($this->returnValue('not important'));
|
160 |
+
|
161 |
+
$checkMock->expects($this->any())
|
162 |
+
->method('getSolvencyCheckClient')
|
163 |
+
->will($this->returnValue($fakeClient));
|
164 |
+
|
165 |
+
$checkMock->expects($this->any())
|
166 |
+
->method('getSolvencyCheckResponse')
|
167 |
+
->will($this->returnValue($fakeResponse));
|
168 |
+
|
169 |
+
$this->assertEquals(
|
170 |
+
'R', $checkMock->performSolvencyCheck($quote, $request)
|
171 |
+
);
|
172 |
+
}
|
173 |
+
|
174 |
+
public function testPerformSolvencyCheckWithRequestWithException()
|
175 |
+
{
|
176 |
+
$request = new Mage_Core_Controller_Request_Http();
|
177 |
+
$validationModelMock = $this->getModelMock(
|
178 |
+
'expercash_scoring/quote_address_validation',
|
179 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
180 |
+
);
|
181 |
+
$validationModelMock->expects($this->any())
|
182 |
+
->method('isValidCountry')
|
183 |
+
->will($this->returnValue(true));
|
184 |
+
$validationModelMock->expects($this->any())
|
185 |
+
->method('hasTermsAndConditionsConfirmed')
|
186 |
+
->will($this->returnValue(true));
|
187 |
+
$configMock = $this->getModelMock(
|
188 |
+
'expercash_scoring/config',
|
189 |
+
array(
|
190 |
+
'getMaxNumberOfChecksPerDay', 'getDefaultScoringForDayCount',
|
191 |
+
'getDefaultScoringIfNoDataReturned',
|
192 |
+
'getSkipForCustomerGroups'
|
193 |
+
)
|
194 |
+
);
|
195 |
+
$configMock->expects($this->any())
|
196 |
+
->method('getMaxNumberOfChecksPerDay')
|
197 |
+
->will($this->returnValue(3));
|
198 |
+
$configMock->expects($this->any())
|
199 |
+
->method('getDefaultScoringForDayCount')
|
200 |
+
->will($this->returnValue('Y'));
|
201 |
+
|
202 |
+
$configMock->expects($this->any())
|
203 |
+
->method('getSkipForCustomerGroups')
|
204 |
+
->will($this->returnValue(array()));
|
205 |
+
|
206 |
+
$configMock->expects($this->any())
|
207 |
+
->method('getDefaultScoringIfNoDataReturned')
|
208 |
+
->will($this->returnValue(null));
|
209 |
+
$fakeCollection = new Varien_Object();
|
210 |
+
$fakeCollection->setEntriesForCurrentDay(2);
|
211 |
+
$fakeResultModel = new Varien_Object();
|
212 |
+
$fakeResultModel->setCollection($fakeCollection);
|
213 |
+
$checkMock = $this->getModelMock(
|
214 |
+
'expercash_scoring/solvency_check',
|
215 |
+
array(
|
216 |
+
'getAddressValidationModel', 'getConfigModel',
|
217 |
+
'getResultModel',
|
218 |
+
'getParamsAdapter', 'getSolvencyCheckClient',
|
219 |
+
'getSolvencyCheckResponse', 'saveSolvencyResult',
|
220 |
+
'getCheckoutSession', 'getDataHelper'
|
221 |
+
)
|
222 |
+
);
|
223 |
+
$dataHelperMock = $this->getHelperMock(
|
224 |
+
'expercash_scoring/data', array('log')
|
225 |
+
);
|
226 |
+
|
227 |
+
$checkMock->expects($this->any())
|
228 |
+
->method('getAddressValidationModel')
|
229 |
+
->will($this->returnValue($validationModelMock));
|
230 |
+
$checkMock->expects($this->any())
|
231 |
+
->method('getConfigModel')
|
232 |
+
->will($this->returnValue($configMock));
|
233 |
+
$checkMock->expects($this->any())
|
234 |
+
->method('getResultModel')
|
235 |
+
->will($this->returnValue($fakeResultModel));
|
236 |
+
$checkMock->expects($this->any())
|
237 |
+
->method('getCheckoutSession')
|
238 |
+
->will($this->returnValue(new Varien_Object()));
|
239 |
+
|
240 |
+
$quote = Mage::getModel('sales/quote');
|
241 |
+
|
242 |
+
$fakeResponse = $this->getModelMock(
|
243 |
+
'expercash_scoring/solvency_check_response', array('parseResponse')
|
244 |
+
);
|
245 |
+
$fakeResponse->expects($this->any())
|
246 |
+
->method('parseResponse')
|
247 |
+
->will($this->returnValue(array('escore' => 'R')));
|
248 |
+
|
249 |
+
$fakeAdapter = $this->getHelperMock(
|
250 |
+
'expercash_scoring/request_params_adapter', array('convert')
|
251 |
+
);
|
252 |
+
$fakeAdapter->expects($this->any())
|
253 |
+
->method('convert')
|
254 |
+
->will($this->returnValue(array()));
|
255 |
+
|
256 |
+
$checkMock->expects($this->any())
|
257 |
+
->method('getParamsAdapter')
|
258 |
+
->will($this->returnValue($fakeAdapter));
|
259 |
+
|
260 |
+
$fakeClient = $this->getModelMock(
|
261 |
+
'expercash_scoring/solvency_check_client', array('postRequest')
|
262 |
+
);
|
263 |
+
$fakeClient->expects($this->any())
|
264 |
+
->method('postRequest')
|
265 |
+
->will($this->throwException(new Exception('not important')));
|
266 |
+
|
267 |
+
$checkMock->expects($this->any())
|
268 |
+
->method('getSolvencyCheckClient')
|
269 |
+
->will($this->returnValue($fakeClient));
|
270 |
+
|
271 |
+
$checkMock->expects($this->any())
|
272 |
+
->method('getSolvencyCheckClient')
|
273 |
+
->will($this->returnValue($fakeResponse));
|
274 |
+
|
275 |
+
$checkMock->expects($this->any())
|
276 |
+
->method('getSolvencyCheckResponse')
|
277 |
+
->will($this->returnValue($fakeResponse));
|
278 |
+
|
279 |
+
$dataHelperMock = $this->getHelperMock(
|
280 |
+
'expercash_scoring/data', array('log')
|
281 |
+
);
|
282 |
+
$dataHelperMock->expects($this->once())
|
283 |
+
->method('log')
|
284 |
+
->with(
|
285 |
+
$dataHelperMock->__(
|
286 |
+
'Excention during call to Expercash not important'
|
287 |
+
)
|
288 |
+
);
|
289 |
+
$checkMock->expects($this->once())
|
290 |
+
->method('getDataHelper')
|
291 |
+
->will($this->returnValue($dataHelperMock));
|
292 |
+
|
293 |
+
$this->assertEquals(
|
294 |
+
null, $checkMock->performSolvencyCheck($quote, $request)
|
295 |
+
);
|
296 |
+
}
|
297 |
+
|
298 |
+
public function testPerformSolvencyCheckWithoutRequestIfChecksPerSessionExceeded(
|
299 |
+
)
|
300 |
+
{
|
301 |
+
$request = new Mage_Core_Controller_Request_Http();
|
302 |
+
$validationModelMock = $this->getModelMock(
|
303 |
+
'expercash_scoring/quote_address_validation',
|
304 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
305 |
+
);
|
306 |
+
$validationModelMock->expects($this->any())
|
307 |
+
->method('isValidCountry')
|
308 |
+
->will($this->returnValue(true));
|
309 |
+
$validationModelMock->expects($this->any())
|
310 |
+
->method('hasTermsAndConditionsConfirmed')
|
311 |
+
->will($this->returnValue(true));
|
312 |
+
$configMock = $this->getModelMock(
|
313 |
+
'expercash_scoring/config',
|
314 |
+
array(
|
315 |
+
'getMaxNumberOfChecksPerSession',
|
316 |
+
'getDefaultScoringForSessionCount',
|
317 |
+
'getSkipForCustomerGroups'
|
318 |
+
)
|
319 |
+
);
|
320 |
+
$configMock->expects($this->any())
|
321 |
+
->method('getMaxNumberOfChecksPerSession')
|
322 |
+
->will($this->returnValue(3));
|
323 |
+
$configMock->expects($this->any())
|
324 |
+
->method('getDefaultScoringForSessionCount')
|
325 |
+
->will($this->returnValue('Y'));
|
326 |
+
$configMock->expects($this->any())
|
327 |
+
->method('getSkipForCustomerGroups')
|
328 |
+
->will($this->returnValue(array()));
|
329 |
+
|
330 |
+
$checkMock = $this->getModelMock(
|
331 |
+
'expercash_scoring/solvency_check',
|
332 |
+
array(
|
333 |
+
'getAddressValidationModel', 'getConfigModel',
|
334 |
+
'getParamsAdapter', 'getSolvencyCheckClient',
|
335 |
+
'getSolvencyCheckResponse', 'saveSolvencyResult',
|
336 |
+
'getCheckoutSession'
|
337 |
+
)
|
338 |
+
);
|
339 |
+
|
340 |
+
$fakeSession = new Varien_Object();
|
341 |
+
$fakeSession->setData('ExperCash_Scoring_Check_Cnt', 5);
|
342 |
+
|
343 |
+
|
344 |
+
$checkMock->expects($this->any())
|
345 |
+
->method('getAddressValidationModel')
|
346 |
+
->will($this->returnValue($validationModelMock));
|
347 |
+
$checkMock->expects($this->any())
|
348 |
+
->method('getConfigModel')
|
349 |
+
->will($this->returnValue($configMock));
|
350 |
+
$checkMock->expects($this->any())
|
351 |
+
->method('getCheckoutSession')
|
352 |
+
->will($this->returnValue($fakeSession));
|
353 |
+
|
354 |
+
$quote = Mage::getModel('sales/quote');
|
355 |
+
$quote->setCustomerGroupId(1);
|
356 |
+
$this->assertEquals(
|
357 |
+
'Y', $checkMock->performSolvencyCheck($quote, $request)
|
358 |
+
);
|
359 |
+
}
|
360 |
+
|
361 |
+
|
362 |
+
public function testPerformSolvencyCheckNoDataReturned()
|
363 |
+
{
|
364 |
+
$request = new Mage_Core_Controller_Request_Http();
|
365 |
+
$validationModelMock = $this->getModelMock(
|
366 |
+
'expercash_scoring/quote_address_validation',
|
367 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
368 |
+
);
|
369 |
+
$validationModelMock->expects($this->any())
|
370 |
+
->method('isValidCountry')
|
371 |
+
->will($this->returnValue(true));
|
372 |
+
$validationModelMock->expects($this->any())
|
373 |
+
->method('hasTermsAndConditionsConfirmed')
|
374 |
+
->will($this->returnValue(true));
|
375 |
+
$configMock = $this->getModelMock(
|
376 |
+
'expercash_scoring/config',
|
377 |
+
array(
|
378 |
+
'getMaxNumberOfChecksPerDay', 'getDefaultScoringForDayCount',
|
379 |
+
'getDefaultScoringIfNoDataReturned',
|
380 |
+
'getSkipForCustomerGroups'
|
381 |
+
)
|
382 |
+
);
|
383 |
+
$configMock->expects($this->any())
|
384 |
+
->method('getMaxNumberOfChecksPerDay')
|
385 |
+
->will($this->returnValue(3));
|
386 |
+
$configMock->expects($this->any())
|
387 |
+
->method('getDefaultScoringForDayCount')
|
388 |
+
->will($this->returnValue('Y'));
|
389 |
+
$configMock->expects($this->any())
|
390 |
+
->method('getDefaultScoringIfNoDataReturned')
|
391 |
+
->will($this->returnValue('G'));
|
392 |
+
$configMock->expects($this->any())
|
393 |
+
->method('getSkipForCustomerGroups')
|
394 |
+
->will($this->returnValue(array()));
|
395 |
+
|
396 |
+
$configMock->expects($this->any())
|
397 |
+
->method('getDefaultScoringIfNoDataReturned')
|
398 |
+
->will($this->returnValue('Y'));
|
399 |
+
$fakeCollection = new Varien_Object();
|
400 |
+
$fakeCollection->setEntriesForCurrentDay(2);
|
401 |
+
$fakeResultModel = new Varien_Object();
|
402 |
+
$fakeResultModel->setCollection($fakeCollection);
|
403 |
+
$checkMock = $this->getModelMock(
|
404 |
+
'expercash_scoring/solvency_check',
|
405 |
+
array(
|
406 |
+
'getAddressValidationModel', 'getConfigModel',
|
407 |
+
'getResultModel',
|
408 |
+
'getParamsAdapter', 'getSolvencyCheckClient',
|
409 |
+
'getSolvencyCheckResponse', 'saveSolvencyResult',
|
410 |
+
'getCheckoutSession'
|
411 |
+
)
|
412 |
+
);
|
413 |
+
$checkMock->expects($this->any())
|
414 |
+
->method('getAddressValidationModel')
|
415 |
+
->will($this->returnValue($validationModelMock));
|
416 |
+
$checkMock->expects($this->any())
|
417 |
+
->method('getConfigModel')
|
418 |
+
->will($this->returnValue($configMock));
|
419 |
+
$checkMock->expects($this->any())
|
420 |
+
->method('getResultModel')
|
421 |
+
->will($this->returnValue($fakeResultModel));
|
422 |
+
$checkMock->expects($this->any())
|
423 |
+
->method('getCheckoutSession')
|
424 |
+
->will($this->returnValue(new Varien_Object()));
|
425 |
+
|
426 |
+
$quote = Mage::getModel('sales/quote');
|
427 |
+
$quote->setCustomerGroupId(1);
|
428 |
+
|
429 |
+
$fakeResponse = $this->getModelMock(
|
430 |
+
'expercash_scoring/solvency_check_response', array('parseResponse')
|
431 |
+
);
|
432 |
+
$fakeResponse->expects($this->any())
|
433 |
+
->method('parseResponse')
|
434 |
+
->will($this->returnValue(array()));
|
435 |
+
|
436 |
+
$fakeAdapter = $this->getHelperMock(
|
437 |
+
'expercash_scoring/request_params_adapter', array('convert')
|
438 |
+
);
|
439 |
+
$fakeAdapter->expects($this->any())
|
440 |
+
->method('convert')
|
441 |
+
->will($this->returnValue(array()));
|
442 |
+
|
443 |
+
$checkMock->expects($this->any())
|
444 |
+
->method('getParamsAdapter')
|
445 |
+
->will($this->returnValue($fakeAdapter));
|
446 |
+
|
447 |
+
$fakeClient = $this->getModelMock(
|
448 |
+
'expercash_scoring/solvency_check_client', array('postRequest')
|
449 |
+
);
|
450 |
+
$fakeClient->expects($this->any())
|
451 |
+
->method('postRequest')
|
452 |
+
->will($this->returnValue('not important'));
|
453 |
+
|
454 |
+
$checkMock->expects($this->any())
|
455 |
+
->method('getSolvencyCheckClient')
|
456 |
+
->will($this->returnValue($fakeClient));
|
457 |
+
|
458 |
+
$checkMock->expects($this->any())
|
459 |
+
->method('getSolvencyCheckClient')
|
460 |
+
->will($this->returnValue($fakeResponse));
|
461 |
+
|
462 |
+
$checkMock->expects($this->any())
|
463 |
+
->method('getSolvencyCheckResponse')
|
464 |
+
->will($this->returnValue($fakeResponse));
|
465 |
+
|
466 |
+
$this->assertEquals(
|
467 |
+
'G', $checkMock->performSolvencyCheck($quote, $request)
|
468 |
+
);
|
469 |
+
}
|
470 |
+
|
471 |
+
public function testPerformSolvencyCheckNoDataStillUnknown()
|
472 |
+
{
|
473 |
+
$request = new Mage_Core_Controller_Request_Http();
|
474 |
+
$validationModelMock = $this->getModelMock(
|
475 |
+
'expercash_scoring/quote_address_validation',
|
476 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
477 |
+
);
|
478 |
+
$validationModelMock->expects($this->any())
|
479 |
+
->method('isValidCountry')
|
480 |
+
->will($this->returnValue(true));
|
481 |
+
$validationModelMock->expects($this->any())
|
482 |
+
->method('hasTermsAndConditionsConfirmed')
|
483 |
+
->will($this->returnValue(true));
|
484 |
+
$configMock = $this->getModelMock(
|
485 |
+
'expercash_scoring/config',
|
486 |
+
array(
|
487 |
+
'getMaxNumberOfChecksPerDay', 'getDefaultScoringForDayCount',
|
488 |
+
'getDefaultScoringIfNoDataReturned',
|
489 |
+
'getSkipForCustomerGroups'
|
490 |
+
)
|
491 |
+
);
|
492 |
+
$configMock->expects($this->any())
|
493 |
+
->method('getMaxNumberOfChecksPerDay')
|
494 |
+
->will($this->returnValue(3));
|
495 |
+
$configMock->expects($this->any())
|
496 |
+
->method('getDefaultScoringForDayCount')
|
497 |
+
->will($this->returnValue('Y'));
|
498 |
+
$configMock->expects($this->any())
|
499 |
+
->method('getDefaultScoringIfNoDataReturned')
|
500 |
+
->will($this->returnValue(''));
|
501 |
+
$configMock->expects($this->any())
|
502 |
+
->method('getSkipForCustomerGroups')
|
503 |
+
->will($this->returnValue(array()));
|
504 |
+
|
505 |
+
$configMock->expects($this->any())
|
506 |
+
->method('getDefaultScoringIfNoDataReturned')
|
507 |
+
->will($this->returnValue('Y'));
|
508 |
+
$fakeCollection = new Varien_Object();
|
509 |
+
$fakeCollection->setEntriesForCurrentDay(2);
|
510 |
+
$fakeResultModel = new Varien_Object();
|
511 |
+
$fakeResultModel->setCollection($fakeCollection);
|
512 |
+
$checkMock = $this->getModelMock(
|
513 |
+
'expercash_scoring/solvency_check',
|
514 |
+
array(
|
515 |
+
'getAddressValidationModel', 'getConfigModel',
|
516 |
+
'getResultModel',
|
517 |
+
'getParamsAdapter', 'getSolvencyCheckClient',
|
518 |
+
'getSolvencyCheckResponse', 'saveSolvencyResult',
|
519 |
+
'getCheckoutSession'
|
520 |
+
)
|
521 |
+
);
|
522 |
+
$checkMock->expects($this->any())
|
523 |
+
->method('getAddressValidationModel')
|
524 |
+
->will($this->returnValue($validationModelMock));
|
525 |
+
$checkMock->expects($this->any())
|
526 |
+
->method('getConfigModel')
|
527 |
+
->will($this->returnValue($configMock));
|
528 |
+
$checkMock->expects($this->any())
|
529 |
+
->method('getResultModel')
|
530 |
+
->will($this->returnValue($fakeResultModel));
|
531 |
+
$checkMock->expects($this->any())
|
532 |
+
->method('getCheckoutSession')
|
533 |
+
->will($this->returnValue(new Varien_Object()));
|
534 |
+
|
535 |
+
$quote = Mage::getModel('sales/quote');
|
536 |
+
$quote->setCustomerGroupId(1);
|
537 |
+
|
538 |
+
$fakeResponse = $this->getModelMock(
|
539 |
+
'expercash_scoring/solvency_check_response', array('parseResponse')
|
540 |
+
);
|
541 |
+
$fakeResponse->expects($this->any())
|
542 |
+
->method('parseResponse')
|
543 |
+
->will($this->returnValue(array()));
|
544 |
+
|
545 |
+
$fakeAdapter = $this->getHelperMock(
|
546 |
+
'expercash_scoring/request_params_adapter', array('convert')
|
547 |
+
);
|
548 |
+
$fakeAdapter->expects($this->any())
|
549 |
+
->method('convert')
|
550 |
+
->will($this->returnValue(array()));
|
551 |
+
|
552 |
+
$checkMock->expects($this->any())
|
553 |
+
->method('getParamsAdapter')
|
554 |
+
->will($this->returnValue($fakeAdapter));
|
555 |
+
|
556 |
+
$fakeClient = $this->getModelMock(
|
557 |
+
'expercash_scoring/solvency_check_client', array('postRequest')
|
558 |
+
);
|
559 |
+
$fakeClient->expects($this->any())
|
560 |
+
->method('postRequest')
|
561 |
+
->will($this->returnValue('not important'));
|
562 |
+
|
563 |
+
$checkMock->expects($this->any())
|
564 |
+
->method('getSolvencyCheckClient')
|
565 |
+
->will($this->returnValue($fakeClient));
|
566 |
+
|
567 |
+
$checkMock->expects($this->any())
|
568 |
+
->method('getSolvencyCheckClient')
|
569 |
+
->will($this->returnValue($fakeResponse));
|
570 |
+
|
571 |
+
$checkMock->expects($this->any())
|
572 |
+
->method('getSolvencyCheckResponse')
|
573 |
+
->will($this->returnValue($fakeResponse));
|
574 |
+
|
575 |
+
$this->assertEquals(
|
576 |
+
null, $checkMock->performSolvencyCheck($quote, $request)
|
577 |
+
);
|
578 |
+
}
|
579 |
+
|
580 |
+
|
581 |
+
public function testCustomerGroupSkipsCheck()
|
582 |
+
{
|
583 |
+
$request = new Mage_Core_Controller_Request_Http();
|
584 |
+
$validationModelMock = $this->getModelMock(
|
585 |
+
'expercash_scoring/quote_address_validation',
|
586 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
587 |
+
);
|
588 |
+
$validationModelMock->expects($this->any())
|
589 |
+
->method('isValidCountry')
|
590 |
+
->will($this->returnValue(true));
|
591 |
+
$validationModelMock->expects($this->any())
|
592 |
+
->method('hasTermsAndConditionsConfirmed')
|
593 |
+
->will($this->returnValue(true));
|
594 |
+
$configMock = $this->getModelMock(
|
595 |
+
'expercash_scoring/config',
|
596 |
+
array('getSkipForCustomerGroups')
|
597 |
+
);
|
598 |
+
$configMock->expects($this->any())
|
599 |
+
->method('getSkipForCustomerGroups')
|
600 |
+
->will($this->returnValue(array(1, 2)));
|
601 |
+
|
602 |
+
$amountValidationModel = $this->getModelMock(
|
603 |
+
'expercash_scoring/quote_amount_validation',
|
604 |
+
array('hasQuoteMinAmount')
|
605 |
+
);
|
606 |
+
$amountValidationModel->expects($this->once())
|
607 |
+
->method('hasQuoteMinAmount')
|
608 |
+
->will($this->returnValue(true));
|
609 |
+
|
610 |
+
$checkModel = $this->getModelMock(
|
611 |
+
'expercash_scoring/solvency_check',
|
612 |
+
array(
|
613 |
+
'getAddressValidationModel', 'getAmountValidationModel',
|
614 |
+
'getConfigModel'
|
615 |
+
)
|
616 |
+
);
|
617 |
+
$checkModel->expects($this->once())
|
618 |
+
->method('getAddressValidationModel')
|
619 |
+
->will($this->returnValue($validationModelMock));
|
620 |
+
$checkModel->expects($this->once())
|
621 |
+
->method('getAmountValidationModel')
|
622 |
+
->will($this->returnValue($amountValidationModel));
|
623 |
+
$checkModel->expects($this->once())
|
624 |
+
->method('getConfigModel')
|
625 |
+
->will($this->returnValue($configMock));
|
626 |
+
$quote = Mage::getModel('sales/quote');
|
627 |
+
$quote->setCustomerId(1);
|
628 |
+
$quote->setCustomerGroupId(1);
|
629 |
+
$this->assertEquals(
|
630 |
+
null, $checkModel->performSolvencyCheck($quote, $request)
|
631 |
+
);
|
632 |
+
|
633 |
+
|
634 |
+
}
|
635 |
+
|
636 |
+
public function testGetConfigModel()
|
637 |
+
{
|
638 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
639 |
+
$reflectionClass = new ReflectionClass(get_class($model));
|
640 |
+
$method = $reflectionClass->getMethod('getConfigModel');
|
641 |
+
$method->setAccessible(true);
|
642 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
643 |
+
$this->assertTrue(
|
644 |
+
$method->invoke($model) instanceof Expercash_Scoring_Model_Config
|
645 |
+
);
|
646 |
+
}
|
647 |
+
|
648 |
+
public function testGetValidationModel()
|
649 |
+
{
|
650 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
651 |
+
$reflectionClass = new ReflectionClass(get_class($model));
|
652 |
+
$method = $reflectionClass->getMethod(
|
653 |
+
'getAddressValidationModel'
|
654 |
+
);
|
655 |
+
$method->setAccessible(true);
|
656 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
657 |
+
$this->assertTrue(
|
658 |
+
$method->invoke($model) instanceof
|
659 |
+
Expercash_Scoring_Model_Quote_Address_Validation
|
660 |
+
);
|
661 |
+
}
|
662 |
+
|
663 |
+
public function testGetParamsAdapter()
|
664 |
+
{
|
665 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
666 |
+
$reflectionClass = new ReflectionClass(get_class($model));
|
667 |
+
$method = $reflectionClass->getMethod('getParamsAdapter');
|
668 |
+
$method->setAccessible(true);
|
669 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
670 |
+
$this->assertTrue(
|
671 |
+
$method->invoke($model) instanceof
|
672 |
+
Expercash_Scoring_Helper_Request_Params_Adapter
|
673 |
+
);
|
674 |
+
}
|
675 |
+
|
676 |
+
public function testGetSolvencyCheckClient()
|
677 |
+
{
|
678 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
679 |
+
$reflectionClass = new ReflectionClass(get_class($model));
|
680 |
+
$method = $reflectionClass->getMethod(
|
681 |
+
'getSolvencyCheckClient'
|
682 |
+
);
|
683 |
+
$method->setAccessible(true);
|
684 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
685 |
+
$this->assertTrue(
|
686 |
+
$method->invoke($model) instanceof
|
687 |
+
Expercash_Scoring_Model_Solvency_Check_Client
|
688 |
+
);
|
689 |
+
}
|
690 |
+
|
691 |
+
public function testGetSolvencyCheckResponse()
|
692 |
+
{
|
693 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
694 |
+
$reflectionClass = new ReflectionClass(get_class($model));
|
695 |
+
$method = $reflectionClass->getMethod(
|
696 |
+
'getSolvencyCheckResponse'
|
697 |
+
);
|
698 |
+
$method->setAccessible(true);
|
699 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
700 |
+
$this->assertTrue(
|
701 |
+
$method->invoke($model) instanceof
|
702 |
+
Expercash_Scoring_Model_Solvency_Check_Response
|
703 |
+
);
|
704 |
+
}
|
705 |
+
|
706 |
+
public function testGetResultModel()
|
707 |
+
{
|
708 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
709 |
+
$reflectionClass = new ReflectionClass(get_class($model));
|
710 |
+
$method = $reflectionClass->getMethod('getResultModel');
|
711 |
+
$method->setAccessible(true);
|
712 |
+
$model = Mage::getModel('expercash_scoring/solvency_check');
|
713 |
+
$this->assertTrue(
|
714 |
+
$method->invoke($model) instanceof
|
715 |
+
Expercash_Scoring_Model_Solvency_Check_Result
|
716 |
+
);
|
717 |
+
}
|
718 |
+
|
719 |
+
public function testPerformSolvencyCheckWithDownGradeFromGreen()
|
720 |
+
{
|
721 |
+
$request = new Mage_Core_Controller_Request_Http();
|
722 |
+
$validationModelMock = $this->getModelMock(
|
723 |
+
'expercash_scoring/quote_address_validation',
|
724 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
725 |
+
);
|
726 |
+
$validationModelMock->expects($this->any())
|
727 |
+
->method('isValidCountry')
|
728 |
+
->will($this->returnValue(true));
|
729 |
+
$validationModelMock->expects($this->any())
|
730 |
+
->method('hasTermsAndConditionsConfirmed')
|
731 |
+
->will($this->returnValue(true));
|
732 |
+
$configMock = $this->getModelMock(
|
733 |
+
'expercash_scoring/config',
|
734 |
+
array(
|
735 |
+
'getSkipForCustomerGroups',
|
736 |
+
'getAdditionalConditionForScoringValueGreen'
|
737 |
+
)
|
738 |
+
);
|
739 |
+
|
740 |
+
$configMock->expects($this->any())
|
741 |
+
->method('getSkipForCustomerGroups')
|
742 |
+
->will($this->returnValue(array()));
|
743 |
+
|
744 |
+
$configMock->expects($this->any())
|
745 |
+
->method('getAdditionalConditionForScoringValueGreen')
|
746 |
+
->will(
|
747 |
+
$this->returnValue(
|
748 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE
|
749 |
+
)
|
750 |
+
);
|
751 |
+
|
752 |
+
|
753 |
+
$checkMock = $this->getModelMock(
|
754 |
+
'expercash_scoring/solvency_check',
|
755 |
+
array(
|
756 |
+
'getAddressValidationModel', 'getConfigModel',
|
757 |
+
'getParamsAdapter', 'getSolvencyCheckClient',
|
758 |
+
'getSolvencyCheckResponse', 'saveSolvencyResult',
|
759 |
+
'getCheckoutSession'
|
760 |
+
)
|
761 |
+
);
|
762 |
+
$checkMock->expects($this->any())
|
763 |
+
->method('getAddressValidationModel')
|
764 |
+
->will($this->returnValue($validationModelMock));
|
765 |
+
$checkMock->expects($this->any())
|
766 |
+
->method('getConfigModel')
|
767 |
+
->will($this->returnValue($configMock));
|
768 |
+
|
769 |
+
$checkMock->expects($this->any())
|
770 |
+
->method('getCheckoutSession')
|
771 |
+
->will($this->returnValue(new Varien_Object()));
|
772 |
+
|
773 |
+
$quote = Mage::getModel('sales/quote');
|
774 |
+
|
775 |
+
$fakeResponse = $this->getModelMock(
|
776 |
+
'expercash_scoring/solvency_check_response', array('parseResponse')
|
777 |
+
);
|
778 |
+
$fakeResponse->expects($this->any())
|
779 |
+
->method('parseResponse')
|
780 |
+
->will($this->returnValue(array('escore' => 'G')));
|
781 |
+
|
782 |
+
$fakeAdapter = $this->getHelperMock(
|
783 |
+
'expercash_scoring/request_params_adapter', array('convert')
|
784 |
+
);
|
785 |
+
$fakeAdapter->expects($this->any())
|
786 |
+
->method('convert')
|
787 |
+
->will($this->returnValue(array()));
|
788 |
+
|
789 |
+
$checkMock->expects($this->any())
|
790 |
+
->method('getParamsAdapter')
|
791 |
+
->will($this->returnValue($fakeAdapter));
|
792 |
+
|
793 |
+
$fakeClient = $this->getModelMock(
|
794 |
+
'expercash_scoring/solvency_check_client', array('postRequest')
|
795 |
+
);
|
796 |
+
$fakeClient->expects($this->any())
|
797 |
+
->method('postRequest')
|
798 |
+
->will($this->returnValue('not important'));
|
799 |
+
|
800 |
+
$checkMock->expects($this->any())
|
801 |
+
->method('getSolvencyCheckClient')
|
802 |
+
->will($this->returnValue($fakeClient));
|
803 |
+
|
804 |
+
$checkMock->expects($this->any())
|
805 |
+
->method('getSolvencyCheckClient')
|
806 |
+
->will($this->returnValue($fakeResponse));
|
807 |
+
|
808 |
+
$checkMock->expects($this->any())
|
809 |
+
->method('getSolvencyCheckResponse')
|
810 |
+
->will($this->returnValue($fakeResponse));
|
811 |
+
|
812 |
+
$this->assertEquals(
|
813 |
+
'Y', $checkMock->performSolvencyCheck($quote, $request)
|
814 |
+
);
|
815 |
+
}
|
816 |
+
|
817 |
+
|
818 |
+
public function testPerformSolvencyCheckWithDownGradeFromYellow()
|
819 |
+
{
|
820 |
+
$request = new Mage_Core_Controller_Request_Http();
|
821 |
+
$validationModelMock = $this->getModelMock(
|
822 |
+
'expercash_scoring/quote_address_validation',
|
823 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
824 |
+
);
|
825 |
+
$validationModelMock->expects($this->any())
|
826 |
+
->method('isValidCountry')
|
827 |
+
->will($this->returnValue(true));
|
828 |
+
$validationModelMock->expects($this->any())
|
829 |
+
->method('hasTermsAndConditionsConfirmed')
|
830 |
+
->will($this->returnValue(true));
|
831 |
+
$configMock = $this->getModelMock(
|
832 |
+
'expercash_scoring/config',
|
833 |
+
array(
|
834 |
+
'getSkipForCustomerGroups',
|
835 |
+
'getAdditionalConditionForScoringValueYellow'
|
836 |
+
)
|
837 |
+
);
|
838 |
+
|
839 |
+
$configMock->expects($this->any())
|
840 |
+
->method('getSkipForCustomerGroups')
|
841 |
+
->will($this->returnValue(array()));
|
842 |
+
|
843 |
+
$configMock->expects($this->any())
|
844 |
+
->method('getAdditionalConditionForScoringValueYellow')
|
845 |
+
->will(
|
846 |
+
$this->returnValue(
|
847 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE
|
848 |
+
)
|
849 |
+
);
|
850 |
+
|
851 |
+
|
852 |
+
$checkMock = $this->getModelMock(
|
853 |
+
'expercash_scoring/solvency_check',
|
854 |
+
array(
|
855 |
+
'getAddressValidationModel', 'getConfigModel',
|
856 |
+
'getParamsAdapter', 'getSolvencyCheckClient',
|
857 |
+
'getSolvencyCheckResponse', 'saveSolvencyResult',
|
858 |
+
'getCheckoutSession'
|
859 |
+
)
|
860 |
+
);
|
861 |
+
$checkMock->expects($this->any())
|
862 |
+
->method('getAddressValidationModel')
|
863 |
+
->will($this->returnValue($validationModelMock));
|
864 |
+
$checkMock->expects($this->any())
|
865 |
+
->method('getConfigModel')
|
866 |
+
->will($this->returnValue($configMock));
|
867 |
+
|
868 |
+
$checkMock->expects($this->any())
|
869 |
+
->method('getCheckoutSession')
|
870 |
+
->will($this->returnValue(new Varien_Object()));
|
871 |
+
|
872 |
+
$quote = Mage::getModel('sales/quote');
|
873 |
+
|
874 |
+
$fakeResponse = $this->getModelMock(
|
875 |
+
'expercash_scoring/solvency_check_response', array('parseResponse')
|
876 |
+
);
|
877 |
+
$fakeResponse->expects($this->any())
|
878 |
+
->method('parseResponse')
|
879 |
+
->will($this->returnValue(array('escore' => 'Y')));
|
880 |
+
|
881 |
+
$fakeAdapter = $this->getHelperMock(
|
882 |
+
'expercash_scoring/request_params_adapter', array('convert')
|
883 |
+
);
|
884 |
+
$fakeAdapter->expects($this->any())
|
885 |
+
->method('convert')
|
886 |
+
->will($this->returnValue(array()));
|
887 |
+
|
888 |
+
$checkMock->expects($this->any())
|
889 |
+
->method('getParamsAdapter')
|
890 |
+
->will($this->returnValue($fakeAdapter));
|
891 |
+
|
892 |
+
$fakeClient = $this->getModelMock(
|
893 |
+
'expercash_scoring/solvency_check_client', array('postRequest')
|
894 |
+
);
|
895 |
+
$fakeClient->expects($this->any())
|
896 |
+
->method('postRequest')
|
897 |
+
->will($this->returnValue('not important'));
|
898 |
+
|
899 |
+
$checkMock->expects($this->any())
|
900 |
+
->method('getSolvencyCheckClient')
|
901 |
+
->will($this->returnValue($fakeClient));
|
902 |
+
|
903 |
+
$checkMock->expects($this->any())
|
904 |
+
->method('getSolvencyCheckClient')
|
905 |
+
->will($this->returnValue($fakeResponse));
|
906 |
+
|
907 |
+
$checkMock->expects($this->any())
|
908 |
+
->method('getSolvencyCheckResponse')
|
909 |
+
->will($this->returnValue($fakeResponse));
|
910 |
+
|
911 |
+
$this->assertEquals(
|
912 |
+
'R', $checkMock->performSolvencyCheck($quote, $request)
|
913 |
+
);
|
914 |
+
}
|
915 |
+
|
916 |
+
public function testPerformSolvencyCheckWithNoDownGradeForYellow()
|
917 |
+
{
|
918 |
+
$request = new Mage_Core_Controller_Request_Http();
|
919 |
+
$validationModelMock = $this->getModelMock(
|
920 |
+
'expercash_scoring/quote_address_validation',
|
921 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
922 |
+
);
|
923 |
+
$validationModelMock->expects($this->any())
|
924 |
+
->method('isValidCountry')
|
925 |
+
->will($this->returnValue(true));
|
926 |
+
$validationModelMock->expects($this->any())
|
927 |
+
->method('hasTermsAndConditionsConfirmed')
|
928 |
+
->will($this->returnValue(true));
|
929 |
+
$configMock = $this->getModelMock(
|
930 |
+
'expercash_scoring/config',
|
931 |
+
array(
|
932 |
+
'getSkipForCustomerGroups',
|
933 |
+
'getAdditionalConditionForScoringValueYellow'
|
934 |
+
)
|
935 |
+
);
|
936 |
+
|
937 |
+
$configMock->expects($this->any())
|
938 |
+
->method('getSkipForCustomerGroups')
|
939 |
+
->will($this->returnValue(array()));
|
940 |
+
|
941 |
+
$configMock->expects($this->any())
|
942 |
+
->method('getAdditionalConditionForScoringValueYellow')
|
943 |
+
->will(
|
944 |
+
$this->returnValue(
|
945 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE
|
946 |
+
)
|
947 |
+
);
|
948 |
+
|
949 |
+
|
950 |
+
$checkMock = $this->getModelMock(
|
951 |
+
'expercash_scoring/solvency_check',
|
952 |
+
array(
|
953 |
+
'getAddressValidationModel', 'getConfigModel',
|
954 |
+
'getParamsAdapter', 'getSolvencyCheckClient',
|
955 |
+
'getSolvencyCheckResponse', 'saveSolvencyResult',
|
956 |
+
'getCheckoutSession'
|
957 |
+
)
|
958 |
+
);
|
959 |
+
$checkMock->expects($this->any())
|
960 |
+
->method('getAddressValidationModel')
|
961 |
+
->will($this->returnValue($validationModelMock));
|
962 |
+
$checkMock->expects($this->any())
|
963 |
+
->method('getConfigModel')
|
964 |
+
->will($this->returnValue($configMock));
|
965 |
+
|
966 |
+
$checkMock->expects($this->any())
|
967 |
+
->method('getCheckoutSession')
|
968 |
+
->will($this->returnValue(new Varien_Object()));
|
969 |
+
|
970 |
+
$quote = Mage::getModel('sales/quote');
|
971 |
+
|
972 |
+
$fakeResponse = $this->getModelMock(
|
973 |
+
'expercash_scoring/solvency_check_response', array('parseResponse')
|
974 |
+
);
|
975 |
+
$fakeResponse->expects($this->once())
|
976 |
+
->method('parseResponse')
|
977 |
+
->will(
|
978 |
+
$this->returnValue(
|
979 |
+
array(
|
980 |
+
'escore' => 'Y',
|
981 |
+
'escore_feature' => Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE
|
982 |
+
)
|
983 |
+
)
|
984 |
+
);
|
985 |
+
|
986 |
+
$fakeAdapter = $this->getHelperMock(
|
987 |
+
'expercash_scoring/request_params_adapter', array('convert')
|
988 |
+
);
|
989 |
+
$fakeAdapter->expects($this->any())
|
990 |
+
->method('convert')
|
991 |
+
->will($this->returnValue(array()));
|
992 |
+
|
993 |
+
$checkMock->expects($this->any())
|
994 |
+
->method('getParamsAdapter')
|
995 |
+
->will($this->returnValue($fakeAdapter));
|
996 |
+
|
997 |
+
$fakeClient = $this->getModelMock(
|
998 |
+
'expercash_scoring/solvency_check_client', array('postRequest')
|
999 |
+
);
|
1000 |
+
$fakeClient->expects($this->any())
|
1001 |
+
->method('postRequest')
|
1002 |
+
->will($this->returnValue('not important'));
|
1003 |
+
|
1004 |
+
$checkMock->expects($this->any())
|
1005 |
+
->method('getSolvencyCheckClient')
|
1006 |
+
->will($this->returnValue($fakeClient));
|
1007 |
+
|
1008 |
+
$checkMock->expects($this->any())
|
1009 |
+
->method('getSolvencyCheckClient')
|
1010 |
+
->will($this->returnValue($fakeResponse));
|
1011 |
+
|
1012 |
+
$checkMock->expects($this->any())
|
1013 |
+
->method('getSolvencyCheckResponse')
|
1014 |
+
->will($this->returnValue($fakeResponse));
|
1015 |
+
|
1016 |
+
$this->assertEquals(
|
1017 |
+
'Y', $checkMock->performSolvencyCheck($quote, $request)
|
1018 |
+
);
|
1019 |
+
|
1020 |
+
}
|
1021 |
+
|
1022 |
+
public function testPerformSolvencyCheckWithNoDownGradeForRed()
|
1023 |
+
{
|
1024 |
+
$request = new Mage_Core_Controller_Request_Http();
|
1025 |
+
$validationModelMock = $this->getModelMock(
|
1026 |
+
'expercash_scoring/quote_address_validation',
|
1027 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
1028 |
+
);
|
1029 |
+
$validationModelMock->expects($this->any())
|
1030 |
+
->method('isValidCountry')
|
1031 |
+
->will($this->returnValue(true));
|
1032 |
+
$validationModelMock->expects($this->any())
|
1033 |
+
->method('hasTermsAndConditionsConfirmed')
|
1034 |
+
->will($this->returnValue(true));
|
1035 |
+
$configMock = $this->getModelMock(
|
1036 |
+
'expercash_scoring/config',
|
1037 |
+
array(
|
1038 |
+
'getSkipForCustomerGroups',
|
1039 |
+
'getAdditionalConditionForScoringValueYellow'
|
1040 |
+
)
|
1041 |
+
);
|
1042 |
+
|
1043 |
+
$configMock->expects($this->any())
|
1044 |
+
->method('getSkipForCustomerGroups')
|
1045 |
+
->will($this->returnValue(array()));
|
1046 |
+
|
1047 |
+
$configMock->expects($this->any())
|
1048 |
+
->method('getAdditionalConditionForScoringValueYellow')
|
1049 |
+
->will(
|
1050 |
+
$this->returnValue(
|
1051 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE
|
1052 |
+
)
|
1053 |
+
);
|
1054 |
+
|
1055 |
+
|
1056 |
+
$checkMock = $this->getModelMock(
|
1057 |
+
'expercash_scoring/solvency_check',
|
1058 |
+
array(
|
1059 |
+
'getAddressValidationModel', 'getConfigModel',
|
1060 |
+
'getParamsAdapter', 'getSolvencyCheckClient',
|
1061 |
+
'getSolvencyCheckResponse', 'saveSolvencyResult',
|
1062 |
+
'getCheckoutSession', 'getAdditionalConditionForScoringValue'
|
1063 |
+
)
|
1064 |
+
);
|
1065 |
+
$checkMock->expects($this->any())
|
1066 |
+
->method('getAddressValidationModel')
|
1067 |
+
->will($this->returnValue($validationModelMock));
|
1068 |
+
$checkMock->expects($this->any())
|
1069 |
+
->method('getConfigModel')
|
1070 |
+
->will($this->returnValue($configMock));
|
1071 |
+
|
1072 |
+
$checkMock->expects($this->any())
|
1073 |
+
->method('getCheckoutSession')
|
1074 |
+
->will($this->returnValue(new Varien_Object()));
|
1075 |
+
$checkMock->expects($this->any())
|
1076 |
+
->method('getAdditionalConditionForScoringValue')
|
1077 |
+
->will($this->returnValue(array('fakeValue')));
|
1078 |
+
|
1079 |
+
|
1080 |
+
$quote = Mage::getModel('sales/quote');
|
1081 |
+
|
1082 |
+
$fakeResponse = $this->getModelMock(
|
1083 |
+
'expercash_scoring/solvency_check_response', array('parseResponse')
|
1084 |
+
);
|
1085 |
+
$fakeResponse->expects($this->once())
|
1086 |
+
->method('parseResponse')
|
1087 |
+
->will(
|
1088 |
+
$this->returnValue(
|
1089 |
+
array(
|
1090 |
+
'escore' => 'R',
|
1091 |
+
'escore_feature' => Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE
|
1092 |
+
)
|
1093 |
+
)
|
1094 |
+
);
|
1095 |
+
|
1096 |
+
$fakeAdapter = $this->getHelperMock(
|
1097 |
+
'expercash_scoring/request_params_adapter', array('convert')
|
1098 |
+
);
|
1099 |
+
$fakeAdapter->expects($this->any())
|
1100 |
+
->method('convert')
|
1101 |
+
->will($this->returnValue(array()));
|
1102 |
+
|
1103 |
+
$checkMock->expects($this->any())
|
1104 |
+
->method('getParamsAdapter')
|
1105 |
+
->will($this->returnValue($fakeAdapter));
|
1106 |
+
|
1107 |
+
$fakeClient = $this->getModelMock(
|
1108 |
+
'expercash_scoring/solvency_check_client', array('postRequest')
|
1109 |
+
);
|
1110 |
+
$fakeClient->expects($this->any())
|
1111 |
+
->method('postRequest')
|
1112 |
+
->will($this->returnValue('not important'));
|
1113 |
+
|
1114 |
+
$checkMock->expects($this->any())
|
1115 |
+
->method('getSolvencyCheckClient')
|
1116 |
+
->will($this->returnValue($fakeClient));
|
1117 |
+
|
1118 |
+
$checkMock->expects($this->any())
|
1119 |
+
->method('getSolvencyCheckClient')
|
1120 |
+
->will($this->returnValue($fakeResponse));
|
1121 |
+
|
1122 |
+
$checkMock->expects($this->any())
|
1123 |
+
->method('getSolvencyCheckResponse')
|
1124 |
+
->will($this->returnValue($fakeResponse));
|
1125 |
+
|
1126 |
+
$this->assertEquals(
|
1127 |
+
'R', $checkMock->performSolvencyCheck($quote, $request)
|
1128 |
+
);
|
1129 |
+
|
1130 |
+
}
|
1131 |
+
|
1132 |
+
public function testPerformSolvencyCheckWithNoDownGradeForYellowDueToHigherRating()
|
1133 |
+
{
|
1134 |
+
$request = new Mage_Core_Controller_Request_Http();
|
1135 |
+
$validationModelMock = $this->getModelMock(
|
1136 |
+
'expercash_scoring/quote_address_validation',
|
1137 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
1138 |
+
);
|
1139 |
+
$validationModelMock->expects($this->any())
|
1140 |
+
->method('isValidCountry')
|
1141 |
+
->will($this->returnValue(true));
|
1142 |
+
$validationModelMock->expects($this->any())
|
1143 |
+
->method('hasTermsAndConditionsConfirmed')
|
1144 |
+
->will($this->returnValue(true));
|
1145 |
+
$configMock = $this->getModelMock(
|
1146 |
+
'expercash_scoring/config',
|
1147 |
+
array(
|
1148 |
+
'getSkipForCustomerGroups',
|
1149 |
+
'getAdditionalConditionForScoringValueYellow'
|
1150 |
+
)
|
1151 |
+
);
|
1152 |
+
|
1153 |
+
$configMock->expects($this->any())
|
1154 |
+
->method('getSkipForCustomerGroups')
|
1155 |
+
->will($this->returnValue(array()));
|
1156 |
+
|
1157 |
+
$configMock->expects($this->any())
|
1158 |
+
->method('getAdditionalConditionForScoringValueYellow')
|
1159 |
+
->will(
|
1160 |
+
$this->returnValue(
|
1161 |
+
Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::DOMESTIC_HOME_OR_PERSON_KNOWN_VALUE
|
1162 |
+
)
|
1163 |
+
);
|
1164 |
+
|
1165 |
+
|
1166 |
+
$checkMock = $this->getModelMock(
|
1167 |
+
'expercash_scoring/solvency_check',
|
1168 |
+
array(
|
1169 |
+
'getAddressValidationModel', 'getConfigModel',
|
1170 |
+
'getParamsAdapter', 'getSolvencyCheckClient',
|
1171 |
+
'getSolvencyCheckResponse', 'saveSolvencyResult',
|
1172 |
+
'getCheckoutSession'
|
1173 |
+
)
|
1174 |
+
);
|
1175 |
+
$checkMock->expects($this->any())
|
1176 |
+
->method('getAddressValidationModel')
|
1177 |
+
->will($this->returnValue($validationModelMock));
|
1178 |
+
$checkMock->expects($this->any())
|
1179 |
+
->method('getConfigModel')
|
1180 |
+
->will($this->returnValue($configMock));
|
1181 |
+
|
1182 |
+
$checkMock->expects($this->any())
|
1183 |
+
->method('getCheckoutSession')
|
1184 |
+
->will($this->returnValue(new Varien_Object()));
|
1185 |
+
|
1186 |
+
$quote = Mage::getModel('sales/quote');
|
1187 |
+
|
1188 |
+
$fakeResponse = $this->getModelMock(
|
1189 |
+
'expercash_scoring/solvency_check_response', array('parseResponse')
|
1190 |
+
);
|
1191 |
+
$fakeResponse->expects($this->once())
|
1192 |
+
->method('parseResponse')
|
1193 |
+
->will(
|
1194 |
+
$this->returnValue(
|
1195 |
+
array(
|
1196 |
+
'escore' => 'Y',
|
1197 |
+
'escore_feature' => Expercash_Scoring_Model_System_Config_Source_Scoring_Condition::PERSON_KNOWN_VALUE
|
1198 |
+
)
|
1199 |
+
)
|
1200 |
+
);
|
1201 |
+
|
1202 |
+
$fakeAdapter = $this->getHelperMock(
|
1203 |
+
'expercash_scoring/request_params_adapter', array('convert')
|
1204 |
+
);
|
1205 |
+
$fakeAdapter->expects($this->any())
|
1206 |
+
->method('convert')
|
1207 |
+
->will($this->returnValue(array()));
|
1208 |
+
|
1209 |
+
$checkMock->expects($this->any())
|
1210 |
+
->method('getParamsAdapter')
|
1211 |
+
->will($this->returnValue($fakeAdapter));
|
1212 |
+
|
1213 |
+
$fakeClient = $this->getModelMock(
|
1214 |
+
'expercash_scoring/solvency_check_client', array('postRequest')
|
1215 |
+
);
|
1216 |
+
$fakeClient->expects($this->any())
|
1217 |
+
->method('postRequest')
|
1218 |
+
->will($this->returnValue('not important'));
|
1219 |
+
|
1220 |
+
$checkMock->expects($this->any())
|
1221 |
+
->method('getSolvencyCheckClient')
|
1222 |
+
->will($this->returnValue($fakeClient));
|
1223 |
+
|
1224 |
+
$checkMock->expects($this->any())
|
1225 |
+
->method('getSolvencyCheckClient')
|
1226 |
+
->will($this->returnValue($fakeResponse));
|
1227 |
+
|
1228 |
+
$checkMock->expects($this->any())
|
1229 |
+
->method('getSolvencyCheckResponse')
|
1230 |
+
->will($this->returnValue($fakeResponse));
|
1231 |
+
|
1232 |
+
$this->assertEquals(
|
1233 |
+
'Y', $checkMock->performSolvencyCheck($quote, $request)
|
1234 |
+
);
|
1235 |
+
|
1236 |
+
}
|
1237 |
+
|
1238 |
+
public function testValueIfNoTermsAndConditionsAreConfirmed()
|
1239 |
+
{
|
1240 |
+
$quote = Mage::getModel('sales/quote');
|
1241 |
+
$request = new Mage_Core_Controller_Request_Http();
|
1242 |
+
$validationModelMock = $this->getModelMock(
|
1243 |
+
'expercash_scoring/quote_address_validation',
|
1244 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
1245 |
+
);
|
1246 |
+
$validationModelMock->expects($this->any())
|
1247 |
+
->method('isValidCountry')
|
1248 |
+
->will($this->returnValue(true));
|
1249 |
+
$validationModelMock->expects($this->any())
|
1250 |
+
->method('hasTermsAndConditionsConfirmed')
|
1251 |
+
->will($this->returnValue(false));
|
1252 |
+
$configMock = $this->getModelMock(
|
1253 |
+
'expercash_scoring/config',
|
1254 |
+
array(
|
1255 |
+
'getSkipForCustomerGroups',
|
1256 |
+
'getAdditionalConditionForScoringValueYellow'
|
1257 |
+
)
|
1258 |
+
);
|
1259 |
+
|
1260 |
+
$checkMock = $this->getModelMock(
|
1261 |
+
'expercash_scoring/solvency_check',
|
1262 |
+
array(
|
1263 |
+
'getAddressValidationModel', 'getConfigModel',
|
1264 |
+
'getCheckoutSession'
|
1265 |
+
)
|
1266 |
+
);
|
1267 |
+
|
1268 |
+
$configMock = $this->getModelMock(
|
1269 |
+
'expercash_scoring/config',
|
1270 |
+
array('getSkipForCustomerGroups')
|
1271 |
+
);
|
1272 |
+
|
1273 |
+
$configMock->expects($this->any())
|
1274 |
+
->method('getSkipForCustomerGroups')
|
1275 |
+
->will($this->returnValue(array()));
|
1276 |
+
|
1277 |
+
$checkMock->expects($this->any())
|
1278 |
+
->method('getAddressValidationModel')
|
1279 |
+
->will($this->returnValue($validationModelMock));
|
1280 |
+
|
1281 |
+
$checkMock->expects($this->any())
|
1282 |
+
->method('getConfigModel')
|
1283 |
+
->will($this->returnValue($configMock));
|
1284 |
+
|
1285 |
+
$this->assertEquals(
|
1286 |
+
'U', $checkMock->performSolvencyCheck($quote, $request)
|
1287 |
+
);
|
1288 |
+
}
|
1289 |
+
|
1290 |
+
|
1291 |
+
public function testValueIfCustomerHasCheckWithinTheLastXDays()
|
1292 |
+
{
|
1293 |
+
$quote = Mage::getModel('sales/quote');
|
1294 |
+
$request = new Mage_Core_Controller_Request_Http();
|
1295 |
+
$validationModelMock = $this->getModelMock(
|
1296 |
+
'expercash_scoring/quote_address_validation',
|
1297 |
+
array('isValidCountry')
|
1298 |
+
);
|
1299 |
+
|
1300 |
+
$fakeResultEntry = $this->getResourceModelMock(
|
1301 |
+
'expercash_scoring/solvency_check_result_collection',
|
1302 |
+
array('getLastEntryFromTheLastDays')
|
1303 |
+
);
|
1304 |
+
$fakeResultEntry->expects($this->any())
|
1305 |
+
->method('getLastEntryFromTheLastDays')
|
1306 |
+
->will($this->returnValue('Y'));
|
1307 |
+
|
1308 |
+
$fakeResultModel = $this->getModelMock(
|
1309 |
+
'expercash_scoring/solvency_check_result', array('getCollection')
|
1310 |
+
);
|
1311 |
+
$fakeResultModel->expects($this->any())
|
1312 |
+
->method('getCollection')
|
1313 |
+
->will($this->returnValue($fakeResultEntry));
|
1314 |
+
|
1315 |
+
$validationModelMock->expects($this->any())
|
1316 |
+
->method('isValidCountry')
|
1317 |
+
->will($this->returnValue(true));
|
1318 |
+
|
1319 |
+
$configMock = $this->getModelMock(
|
1320 |
+
'expercash_scoring/config',
|
1321 |
+
array(
|
1322 |
+
'getSkipForCustomerGroups',
|
1323 |
+
'getAdditionalConditionForScoringValueYellow'
|
1324 |
+
)
|
1325 |
+
);
|
1326 |
+
|
1327 |
+
$checkMock = $this->getModelMock(
|
1328 |
+
'expercash_scoring/solvency_check',
|
1329 |
+
array(
|
1330 |
+
'getAddressValidationModel', 'getConfigModel',
|
1331 |
+
'getCheckoutSession', 'getResultModel'
|
1332 |
+
)
|
1333 |
+
);
|
1334 |
+
|
1335 |
+
$configMock = $this->getModelMock(
|
1336 |
+
'expercash_scoring/config',
|
1337 |
+
array('getSkipForCustomerGroups')
|
1338 |
+
);
|
1339 |
+
|
1340 |
+
$configMock->expects($this->any())
|
1341 |
+
->method('getSkipForCustomerGroups')
|
1342 |
+
->will($this->returnValue(array()));
|
1343 |
+
|
1344 |
+
$checkMock->expects($this->any())
|
1345 |
+
->method('getAddressValidationModel')
|
1346 |
+
->will($this->returnValue($validationModelMock));
|
1347 |
+
|
1348 |
+
$checkMock->expects($this->any())
|
1349 |
+
->method('getConfigModel')
|
1350 |
+
->will($this->returnValue($configMock));
|
1351 |
+
|
1352 |
+
$checkMock->expects($this->any())
|
1353 |
+
->method('getResultModel')
|
1354 |
+
->will($this->returnValue($fakeResultModel));
|
1355 |
+
|
1356 |
+
$this->assertEquals(
|
1357 |
+
'Y', $checkMock->performSolvencyCheck($quote, $request)
|
1358 |
+
);
|
1359 |
+
}
|
1360 |
+
|
1361 |
+
public function testPerformSolvencyCheckWithUserRegistering()
|
1362 |
+
{
|
1363 |
+
$validationModelMock = $this->getModelMock(
|
1364 |
+
'expercash_scoring/quote_address_validation',
|
1365 |
+
array('isValidCountry', 'hasTermsAndConditionsConfirmed')
|
1366 |
+
);
|
1367 |
+
$request = new Mage_Core_Controller_Request_Http();
|
1368 |
+
$validationModelMock->expects($this->any())
|
1369 |
+
->method('isValidCountry')
|
1370 |
+
->will($this->returnValue(true));
|
1371 |
+
$validationModelMock->expects($this->any())
|
1372 |
+
->method('hasTermsAndConditionsConfirmed')
|
1373 |
+
->will($this->returnValue(true));
|
1374 |
+
$configMock = $this->getModelMock(
|
1375 |
+
'expercash_scoring/config',
|
1376 |
+
array(
|
1377 |
+
'getMaxNumberOfChecksPerDay', 'getDefaultScoringForDayCount',
|
1378 |
+
'getSkipForCustomerGroups'
|
1379 |
+
)
|
1380 |
+
);
|
1381 |
+
$configMock->expects($this->any())
|
1382 |
+
->method('getMaxNumberOfChecksPerDay')
|
1383 |
+
->will($this->returnValue(40));
|
1384 |
+
$configMock->expects($this->any())
|
1385 |
+
->method('getDefaultScoringForDayCount')
|
1386 |
+
->will($this->returnValue('G'));
|
1387 |
+
$configMock->expects($this->any())
|
1388 |
+
->method('getSkipForCustomerGroups')
|
1389 |
+
->will($this->returnValue(array()));
|
1390 |
+
$fakeCollection = new Varien_Object();
|
1391 |
+
$fakeCollection->setEntriesForCurrentDay(2);
|
1392 |
+
$fakeResultModel = $this->getModelMock('expercash_scoring/solvency_check_result', array('save', 'getId'));
|
1393 |
+
$fakeResultModel->expects($this->any())
|
1394 |
+
->method('getId')
|
1395 |
+
->will($this->returnValue(123));
|
1396 |
+
|
1397 |
+
$fakeResultModel->setCollection($fakeCollection);
|
1398 |
+
|
1399 |
+
$fakeSession = new Varien_Object();
|
1400 |
+
|
1401 |
+
$fakeDataHelper = $this->getHelperMock('expercash_scoring/data', array('isUserRegistering'));
|
1402 |
+
$fakeDataHelper->expects($this->any())
|
1403 |
+
->method('isUserRegistering')
|
1404 |
+
->will($this->returnValue(true));
|
1405 |
+
|
1406 |
+
|
1407 |
+
$checkMock = $this->getModelMock(
|
1408 |
+
'expercash_scoring/solvency_check',
|
1409 |
+
array(
|
1410 |
+
'getAddressValidationModel', 'getConfigModel',
|
1411 |
+
'getResultModel',
|
1412 |
+
'getParamsAdapter', 'getSolvencyCheckClient',
|
1413 |
+
'getSolvencyCheckResponse',
|
1414 |
+
'getCheckoutSession', 'getDataHelper'
|
1415 |
+
)
|
1416 |
+
);
|
1417 |
+
$checkMock->expects($this->any())
|
1418 |
+
->method('getAddressValidationModel')
|
1419 |
+
->will($this->returnValue($validationModelMock));
|
1420 |
+
$checkMock->expects($this->any())
|
1421 |
+
->method('getConfigModel')
|
1422 |
+
->will($this->returnValue($configMock));
|
1423 |
+
$checkMock->expects($this->any())
|
1424 |
+
->method('getResultModel')
|
1425 |
+
->will($this->returnValue($fakeResultModel));
|
1426 |
+
$checkMock->expects($this->any())
|
1427 |
+
->method('getCheckoutSession')
|
1428 |
+
->will($this->returnValue($fakeSession));
|
1429 |
+
$checkMock->expects($this->any())
|
1430 |
+
->method('getDataHelper')
|
1431 |
+
->will($this->returnValue($fakeDataHelper));
|
1432 |
+
|
1433 |
+
$quote = Mage::getModel('sales/quote');
|
1434 |
+
|
1435 |
+
$fakeResponse = $this->getModelMock(
|
1436 |
+
'expercash_scoring/solvency_check_response', array('parseResponse')
|
1437 |
+
);
|
1438 |
+
$fakeResponse->expects($this->any())
|
1439 |
+
->method('parseResponse')
|
1440 |
+
->will($this->returnValue(array('escore' => 'R')));
|
1441 |
+
|
1442 |
+
$fakeAdapter = $this->getHelperMock(
|
1443 |
+
'expercash_scoring/request_params_adapter', array('convert')
|
1444 |
+
);
|
1445 |
+
$fakeAdapter->expects($this->any())
|
1446 |
+
->method('convert')
|
1447 |
+
->will($this->returnValue(array()));
|
1448 |
+
|
1449 |
+
$checkMock->expects($this->any())
|
1450 |
+
->method('getParamsAdapter')
|
1451 |
+
->will($this->returnValue($fakeAdapter));
|
1452 |
+
|
1453 |
+
$fakeClient = $this->getModelMock(
|
1454 |
+
'expercash_scoring/solvency_check_client', array('postRequest')
|
1455 |
+
);
|
1456 |
+
$fakeClient->expects($this->any())
|
1457 |
+
->method('postRequest')
|
1458 |
+
->will($this->returnValue('not important'));
|
1459 |
+
|
1460 |
+
$checkMock->expects($this->any())
|
1461 |
+
->method('getSolvencyCheckClient')
|
1462 |
+
->will($this->returnValue($fakeClient));
|
1463 |
+
|
1464 |
+
$checkMock->expects($this->any())
|
1465 |
+
->method('getSolvencyCheckResponse')
|
1466 |
+
->will($this->returnValue($fakeResponse));
|
1467 |
+
|
1468 |
+
$this->assertEquals(
|
1469 |
+
'R', $checkMock->performSolvencyCheck($quote, $request)
|
1470 |
+
);
|
1471 |
+
$this->assertEquals(123, $fakeSession->getExpScoringId());
|
1472 |
+
}
|
1473 |
+
}
|
app/code/community/Expercash/Scoring/controllers/Adminhtml/ScoringController.php
ADDED
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package Expercash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
|
11 |
+
class Expercash_Scoring_Adminhtml_ScoringController
|
12 |
+
extends Mage_Adminhtml_Controller_Action
|
13 |
+
{
|
14 |
+
protected function _isAllowed()
|
15 |
+
{
|
16 |
+
return Mage::getSingleton('admin/session')->isAllowed(
|
17 |
+
'customer/manage'
|
18 |
+
);
|
19 |
+
}
|
20 |
+
|
21 |
+
/**
|
22 |
+
* action for the scoring values grid
|
23 |
+
*/
|
24 |
+
public function gridAction()
|
25 |
+
{
|
26 |
+
$this->loadLayout(false);
|
27 |
+
$this->initCustomer('id');
|
28 |
+
$this->loadLayout();
|
29 |
+
$this->getResponse()->setBody(
|
30 |
+
$this->getLayout()->createBlock(
|
31 |
+
'expercash_scoring/adminhtml_customer_edit_tab_expercash_scoring'
|
32 |
+
)
|
33 |
+
->toHtml()
|
34 |
+
);
|
35 |
+
}
|
36 |
+
|
37 |
+
/**
|
38 |
+
* deletes entries for a given customer
|
39 |
+
*/
|
40 |
+
public function deleteAction()
|
41 |
+
{
|
42 |
+
$customer = $this->initCustomer('customer_id');
|
43 |
+
$customerId = $customer->getId();
|
44 |
+
$entryId = $this->getRequest()->getParam('check_id');
|
45 |
+
if (0 < $customerId) {
|
46 |
+
Mage::getModel('expercash_scoring/solvency_check_result')
|
47 |
+
->deleteForCustomer($customerId, $entryId);
|
48 |
+
}
|
49 |
+
$this->_redirect(
|
50 |
+
'adminhtml/customer/edit', array(
|
51 |
+
'id' => $customerId,
|
52 |
+
'back' => 'edit',
|
53 |
+
'tab' => 'customer_edit_tab_expercash_scoring',
|
54 |
+
)
|
55 |
+
);
|
56 |
+
}
|
57 |
+
|
58 |
+
/**
|
59 |
+
* inits and registers the customer
|
60 |
+
*
|
61 |
+
* @param $paramKey - the key which holds the id of the customer in the params
|
62 |
+
*
|
63 |
+
* @return Mage_Customer_Model_Customer
|
64 |
+
*/
|
65 |
+
protected function initCustomer($paramKey)
|
66 |
+
{
|
67 |
+
$customerId = $this->getRequest()->getParam($paramKey);
|
68 |
+
$customer = Mage::getModel('customer/customer')->load($customerId);
|
69 |
+
Mage::register('current_customer', $customer, true);
|
70 |
+
|
71 |
+
return $customer;
|
72 |
+
}
|
73 |
+
}
|
app/code/community/Expercash/Scoring/etc/config.xml
ADDED
@@ -0,0 +1,207 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
|
3 |
+
<!--
|
4 |
+
/**
|
5 |
+
* @category Config
|
6 |
+
* @author Sebastian Ertner <sebastian.ertner@netresearch.de>
|
7 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co.KG
|
8 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
9 |
+
*/
|
10 |
+
-->
|
11 |
+
|
12 |
+
|
13 |
+
<config>
|
14 |
+
<modules>
|
15 |
+
<Expercash_Scoring>
|
16 |
+
<version>15.01.06</version>
|
17 |
+
</Expercash_Scoring>
|
18 |
+
</modules>
|
19 |
+
|
20 |
+
<global>
|
21 |
+
<helpers>
|
22 |
+
<expercash_scoring>
|
23 |
+
<class>Expercash_Scoring_Helper</class>
|
24 |
+
</expercash_scoring>
|
25 |
+
</helpers>
|
26 |
+
<models>
|
27 |
+
<expercash_scoring>
|
28 |
+
<class>Expercash_Scoring_Model</class>
|
29 |
+
<resourceModel>expercash_scoring_mysql4</resourceModel>
|
30 |
+
</expercash_scoring>
|
31 |
+
<expercash_scoring_mysql4>
|
32 |
+
<class>Expercash_Scoring_Model_Mysql4</class>
|
33 |
+
<entities>
|
34 |
+
<solvency_check_result>
|
35 |
+
<table>solvency_check_result</table>
|
36 |
+
</solvency_check_result>
|
37 |
+
</entities>
|
38 |
+
</expercash_scoring_mysql4>
|
39 |
+
</models>
|
40 |
+
<helpers>
|
41 |
+
<expercash_scoring>
|
42 |
+
<class>Expercash_Scoring_Helper</class>
|
43 |
+
</expercash_scoring>
|
44 |
+
</helpers>
|
45 |
+
<blocks>
|
46 |
+
<expercash_scoring>
|
47 |
+
<class>Expercash_Scoring_Block</class>
|
48 |
+
</expercash_scoring>
|
49 |
+
</blocks>
|
50 |
+
<resources>
|
51 |
+
<expercash_scoring_setup>
|
52 |
+
<setup>
|
53 |
+
<module>Expercash_Scoring</module>
|
54 |
+
<class>Mage_Core_Model_Resource_Setup</class>
|
55 |
+
</setup>
|
56 |
+
<connection>
|
57 |
+
<use>core_setup</use>
|
58 |
+
</connection>
|
59 |
+
</expercash_scoring_setup>
|
60 |
+
</resources>
|
61 |
+
</global>
|
62 |
+
|
63 |
+
<adminhtml>
|
64 |
+
<acl>
|
65 |
+
<resources>
|
66 |
+
<admin>
|
67 |
+
<children>
|
68 |
+
<system>
|
69 |
+
<children>
|
70 |
+
<config>
|
71 |
+
<children>
|
72 |
+
<expercash_scoring translate="title"
|
73 |
+
module="expercash_scoring">
|
74 |
+
<title>Scoring</title>
|
75 |
+
</expercash_scoring>
|
76 |
+
</children>
|
77 |
+
</config>
|
78 |
+
</children>
|
79 |
+
</system>
|
80 |
+
</children>
|
81 |
+
</admin>
|
82 |
+
</resources>
|
83 |
+
</acl>
|
84 |
+
<translate>
|
85 |
+
<modules>
|
86 |
+
<Expercash_Scoring>
|
87 |
+
<files>
|
88 |
+
<default>Expercash_Scoring.csv</default>
|
89 |
+
</files>
|
90 |
+
</Expercash_Scoring>
|
91 |
+
</modules>
|
92 |
+
</translate>
|
93 |
+
<layout>
|
94 |
+
<updates>
|
95 |
+
<expercash_scoring>
|
96 |
+
<file>expercash_scoring.xml</file>
|
97 |
+
</expercash_scoring>
|
98 |
+
</updates>
|
99 |
+
</layout>
|
100 |
+
<translate>
|
101 |
+
<modules>
|
102 |
+
<Expercash_Scoring>
|
103 |
+
<files>
|
104 |
+
<default>Expercash_Scoring.csv</default>
|
105 |
+
</files>
|
106 |
+
</Expercash_Scoring>
|
107 |
+
</modules>
|
108 |
+
</translate>
|
109 |
+
</adminhtml>
|
110 |
+
|
111 |
+
<frontend>
|
112 |
+
<events>
|
113 |
+
<core_block_abstract_to_html_after>
|
114 |
+
<observers>
|
115 |
+
<append_agreement_to_billing>
|
116 |
+
<class>expercash_scoring/observer</class>
|
117 |
+
<method>appendAgreementToBilling</method>
|
118 |
+
</append_agreement_to_billing>
|
119 |
+
</observers>
|
120 |
+
</core_block_abstract_to_html_after>
|
121 |
+
<controller_action_postdispatch>
|
122 |
+
<observers>
|
123 |
+
<validate_terms_and_conditions>
|
124 |
+
<class>expercash_scoring/observer</class>
|
125 |
+
<method>performSolvencyCheck</method>
|
126 |
+
</validate_terms_and_conditions>
|
127 |
+
</observers>
|
128 |
+
</controller_action_postdispatch>
|
129 |
+
<core_block_abstract_prepare_layout_before>
|
130 |
+
<observers>
|
131 |
+
<filter_payment_methods>
|
132 |
+
<class>expercash_scoring/observer</class>
|
133 |
+
<method>filterPaymentMethods</method>
|
134 |
+
</filter_payment_methods>
|
135 |
+
</observers>
|
136 |
+
</core_block_abstract_prepare_layout_before>
|
137 |
+
<checkout_submit_all_after>
|
138 |
+
<observers>
|
139 |
+
<set_scoring_value_to_registered_user>
|
140 |
+
<type>singleton</type>
|
141 |
+
<class>expercash_scoring/observer</class>
|
142 |
+
<method>setScoringValueToRegisteredUser</method>
|
143 |
+
</set_scoring_value_to_registered_user>
|
144 |
+
</observers>
|
145 |
+
</checkout_submit_all_after>
|
146 |
+
</events>
|
147 |
+
<layout>
|
148 |
+
<updates>
|
149 |
+
<expercash_scoring>
|
150 |
+
<file>scoring.xml</file>
|
151 |
+
</expercash_scoring>
|
152 |
+
</updates>
|
153 |
+
</layout>
|
154 |
+
|
155 |
+
<translate>
|
156 |
+
<modules>
|
157 |
+
<Expercash_Scoring>
|
158 |
+
<files>
|
159 |
+
<default>Expercash_Scoring.csv</default>
|
160 |
+
</files>
|
161 |
+
</Expercash_Scoring>
|
162 |
+
</modules>
|
163 |
+
</translate>
|
164 |
+
|
165 |
+
<routers>
|
166 |
+
<expercash_scoring>
|
167 |
+
<use>standard</use>
|
168 |
+
<args>
|
169 |
+
<module>Expercash_Scoring</module>
|
170 |
+
<frontName>scoring</frontName>
|
171 |
+
</args>
|
172 |
+
</expercash_scoring>
|
173 |
+
</routers>
|
174 |
+
|
175 |
+
</frontend>
|
176 |
+
|
177 |
+
<admin>
|
178 |
+
<routers>
|
179 |
+
<adminhtml>
|
180 |
+
<use>admin</use>
|
181 |
+
<args>
|
182 |
+
<modules>
|
183 |
+
<expercash_scoring>Expercash_Scoring_Adminhtml</expercash_scoring>
|
184 |
+
<frontName>scoring</frontName>
|
185 |
+
</modules>
|
186 |
+
</args>
|
187 |
+
</adminhtml>
|
188 |
+
</routers>
|
189 |
+
</admin>
|
190 |
+
|
191 |
+
|
192 |
+
<default>
|
193 |
+
<expercash_scoring>
|
194 |
+
<general>
|
195 |
+
<allowed-country>a:1:{i:0;s:2:"DE";}</allowed-country>
|
196 |
+
<epi-url>https://epi.expercash.net</epi-url>
|
197 |
+
</general>
|
198 |
+
</expercash_scoring>
|
199 |
+
</default>
|
200 |
+
<phpunit>
|
201 |
+
<suite>
|
202 |
+
<modules>
|
203 |
+
<Expercash_Scoring/>
|
204 |
+
</modules>
|
205 |
+
</suite>
|
206 |
+
</phpunit>
|
207 |
+
</config>
|
app/code/community/Expercash/Scoring/etc/system.xml
ADDED
@@ -0,0 +1,304 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
|
3 |
+
<!--
|
4 |
+
/**
|
5 |
+
* @category Config
|
6 |
+
* @author Sebastian Ertner <sebastian.ertner@netresearch.de>
|
7 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co.KG
|
8 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
9 |
+
*/
|
10 |
+
-->
|
11 |
+
<config>
|
12 |
+
<sections>
|
13 |
+
<expercash_scoring translate="label comment" module="expercash_scoring">
|
14 |
+
<label>Scoring</label>
|
15 |
+
<tab>customer</tab>
|
16 |
+
<frontend_type>text</frontend_type>
|
17 |
+
<sort_order>10</sort_order>
|
18 |
+
<show_in_default>1</show_in_default>
|
19 |
+
<show_in_website>1</show_in_website>
|
20 |
+
<show_in_store>1</show_in_store>
|
21 |
+
<groups>
|
22 |
+
<general translate="label">
|
23 |
+
<label>General settings</label>
|
24 |
+
<sort_order>100</sort_order>
|
25 |
+
<show_in_default>1</show_in_default>
|
26 |
+
<show_in_website>1</show_in_website>
|
27 |
+
<show_in_store>1</show_in_store>
|
28 |
+
<fields>
|
29 |
+
|
30 |
+
<active translate="label">
|
31 |
+
<label>Enabled</label>
|
32 |
+
<frontend_type>select</frontend_type>
|
33 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
34 |
+
<sort_order>1</sort_order>
|
35 |
+
<show_in_default>1</show_in_default>
|
36 |
+
<show_in_website>1</show_in_website>
|
37 |
+
<show_in_store>1</show_in_store>
|
38 |
+
<sort_order>10</sort_order>
|
39 |
+
</active>
|
40 |
+
|
41 |
+
<projectid translate="label">
|
42 |
+
<label>Project Id</label>
|
43 |
+
<frontend_type>text</frontend_type>
|
44 |
+
<show_in_default>1</show_in_default>
|
45 |
+
<show_in_website>1</show_in_website>
|
46 |
+
<show_in_store>1</show_in_store>
|
47 |
+
<sort_order>20</sort_order>
|
48 |
+
</projectid>
|
49 |
+
|
50 |
+
<apikey translate="label">
|
51 |
+
<label>API-Key</label>
|
52 |
+
<frontend_type>text</frontend_type>
|
53 |
+
<show_in_default>1</show_in_default>
|
54 |
+
<show_in_website>1</show_in_website>
|
55 |
+
<show_in_store>1</show_in_store>
|
56 |
+
<sort_order>30</sort_order>
|
57 |
+
</apikey>
|
58 |
+
|
59 |
+
<terms-addition>
|
60 |
+
<label>Terms Addition</label>
|
61 |
+
<frontend_type>textarea</frontend_type>
|
62 |
+
<sort_order>40</sort_order>
|
63 |
+
<show_in_default>1</show_in_default>
|
64 |
+
<show_in_website>1</show_in_website>
|
65 |
+
<show_in_store>1</show_in_store>
|
66 |
+
</terms-addition>
|
67 |
+
|
68 |
+
<allowed-country translate="label comment">
|
69 |
+
<label>Perform solvency check for countries</label>
|
70 |
+
<frontend_type>multiselect</frontend_type>
|
71 |
+
<frontend_model>Expercash_Scoring_Block_Adminhtml_Field_Country_Renderer</frontend_model>
|
72 |
+
<sort_order>50</sort_order>
|
73 |
+
<source_model>adminhtml/system_config_source_country</source_model>
|
74 |
+
<backend_model>adminhtml/system_config_backend_serialized</backend_model>
|
75 |
+
<show_in_default>1</show_in_default>
|
76 |
+
<show_in_website>1</show_in_website>
|
77 |
+
<show_in_store>1</show_in_store>
|
78 |
+
<can_be_empty>0</can_be_empty>
|
79 |
+
<comment>Only Germany is supported</comment>
|
80 |
+
</allowed-country>
|
81 |
+
|
82 |
+
<logging-enabled translate="label">
|
83 |
+
<label>Log enabled</label>
|
84 |
+
<frontend_type>select</frontend_type>
|
85 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
86 |
+
<sort_order>1</sort_order>
|
87 |
+
<show_in_default>1</show_in_default>
|
88 |
+
<show_in_website>1</show_in_website>
|
89 |
+
<show_in_store>1</show_in_store>
|
90 |
+
<sort_order>60</sort_order>
|
91 |
+
</logging-enabled>
|
92 |
+
</fields>
|
93 |
+
</general>
|
94 |
+
|
95 |
+
<solvency translate="label">
|
96 |
+
<label>Solvency Check Settings</label>
|
97 |
+
<sort_order>110</sort_order>
|
98 |
+
<show_in_default>1</show_in_default>
|
99 |
+
<show_in_website>1</show_in_website>
|
100 |
+
<show_in_store>1</show_in_store>
|
101 |
+
<fields>
|
102 |
+
|
103 |
+
<total-min translate="label">
|
104 |
+
<label>Minimum total amount to check solvency</label>
|
105 |
+
<frontend_type>text</frontend_type>
|
106 |
+
<validate>validate-number</validate>
|
107 |
+
<sort_order>10</sort_order>
|
108 |
+
<show_in_default>1</show_in_default>
|
109 |
+
<show_in_website>1</show_in_website>
|
110 |
+
<show_in_store>1</show_in_store>
|
111 |
+
</total-min>
|
112 |
+
|
113 |
+
<skip-for-customer-groups translate="label">
|
114 |
+
<label>Skip solvency validation for selected customer groups</label>
|
115 |
+
<frontend_type>multiselect</frontend_type>
|
116 |
+
<source_model>adminhtml/system_config_source_customer_group</source_model>
|
117 |
+
<backend_model>adminhtml/system_config_backend_serialized</backend_model>
|
118 |
+
<sort_order>20</sort_order>
|
119 |
+
<show_in_default>1</show_in_default>
|
120 |
+
<show_in_website>1</show_in_website>
|
121 |
+
<show_in_store>1</show_in_store>
|
122 |
+
<can_be_empty>1</can_be_empty>
|
123 |
+
</skip-for-customer-groups>
|
124 |
+
|
125 |
+
<default-scoring-if-no-data-returned translate="label">
|
126 |
+
<label>If no data could be obtained, handle customer as</label>
|
127 |
+
<frontend_type>select</frontend_type>
|
128 |
+
<source_model>expercash_scoring/system_config_source_scoring_value</source_model>
|
129 |
+
<sort_order>30</sort_order>
|
130 |
+
<show_in_default>1</show_in_default>
|
131 |
+
<show_in_website>1</show_in_website>
|
132 |
+
<show_in_store>1</show_in_store>
|
133 |
+
</default-scoring-if-no-data-returned>
|
134 |
+
|
135 |
+
<always-offer-the-following-payment-methods translate="label comment">
|
136 |
+
<label>Always offer the following payment methods</label>
|
137 |
+
<frontend_type>multiselect</frontend_type>
|
138 |
+
<source_model>adminhtml/system_config_source_payment_allmethods</source_model>
|
139 |
+
<backend_model>adminhtml/system_config_backend_serialized</backend_model>
|
140 |
+
<sort_order>40</sort_order>
|
141 |
+
<show_in_default>1</show_in_default>
|
142 |
+
<show_in_website>1</show_in_website>
|
143 |
+
<show_in_store>1</show_in_store>
|
144 |
+
<comment>Overwrites settings for scoring values</comment>
|
145 |
+
</always-offer-the-following-payment-methods>
|
146 |
+
|
147 |
+
</fields>
|
148 |
+
</solvency>
|
149 |
+
|
150 |
+
<re-request translate="label">
|
151 |
+
<label>Response Validity</label>
|
152 |
+
<sort_order>130</sort_order>
|
153 |
+
<show_in_default>1</show_in_default>
|
154 |
+
<show_in_website>1</show_in_website>
|
155 |
+
<show_in_store>1</show_in_store>
|
156 |
+
<fields>
|
157 |
+
<max-number-of-checks-per-session translate="label">
|
158 |
+
<label>Maximum number of checks per session</label>
|
159 |
+
<frontend_type>text</frontend_type>
|
160 |
+
<validate>validate-number</validate>
|
161 |
+
<show_in_default>1</show_in_default>
|
162 |
+
<show_in_website>1</show_in_website>
|
163 |
+
<show_in_store>1</show_in_store>
|
164 |
+
<sort_order>10</sort_order>
|
165 |
+
</max-number-of-checks-per-session>
|
166 |
+
|
167 |
+
<default-scoring-for-session-count translate="label">
|
168 |
+
<label>If maximum number of checks per session exceeded, handle customer as solvency group</label>
|
169 |
+
<frontend_type>select</frontend_type>
|
170 |
+
<source_model>expercash_scoring/system_config_source_scoring_value</source_model>
|
171 |
+
<show_in_default>1</show_in_default>
|
172 |
+
<show_in_website>1</show_in_website>
|
173 |
+
<show_in_store>1</show_in_store>
|
174 |
+
<sort_order>20</sort_order>
|
175 |
+
</default-scoring-for-session-count>
|
176 |
+
|
177 |
+
<max-number-of-checks-per-day translate="label">
|
178 |
+
<label>Maximum number of checks per day</label>
|
179 |
+
<frontend_type>text</frontend_type>
|
180 |
+
<validate>validate-number</validate>
|
181 |
+
<show_in_default>1</show_in_default>
|
182 |
+
<show_in_website>1</show_in_website>
|
183 |
+
<show_in_store>1</show_in_store>
|
184 |
+
<sort_order>30</sort_order>
|
185 |
+
</max-number-of-checks-per-day>
|
186 |
+
|
187 |
+
<default-scoring-for-day-count translate="label">
|
188 |
+
<label>If maximum number of checks per day exceeded, handle customer as solvency group</label>
|
189 |
+
<frontend_type>select</frontend_type>
|
190 |
+
<source_model>expercash_scoring/system_config_source_scoring_value</source_model>
|
191 |
+
<show_in_default>1</show_in_default>
|
192 |
+
<show_in_website>1</show_in_website>
|
193 |
+
<show_in_store>1</show_in_store>
|
194 |
+
<sort_order>40</sort_order>
|
195 |
+
</default-scoring-for-day-count>
|
196 |
+
|
197 |
+
<scoring-expiring-after-days translate="label">
|
198 |
+
<label>Scoring expires after X days</label>
|
199 |
+
<frontend_type>select</frontend_type>
|
200 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
201 |
+
<show_in_default>1</show_in_default>
|
202 |
+
<show_in_website>1</show_in_website>
|
203 |
+
<show_in_store>1</show_in_store>
|
204 |
+
<sort_order>50</sort_order>
|
205 |
+
</scoring-expiring-after-days>
|
206 |
+
|
207 |
+
<scoring-repeat-after-days translate="label">
|
208 |
+
<depends>
|
209 |
+
<scoring-expiring-after-days>1</scoring-expiring-after-days>
|
210 |
+
</depends>
|
211 |
+
<label>Perform new check after X days</label>
|
212 |
+
<frontend_type>text</frontend_type>
|
213 |
+
<validate>required-entry validate-greater-than-zero validate-digits</validate>
|
214 |
+
<show_in_default>1</show_in_default>
|
215 |
+
<show_in_website>1</show_in_website>
|
216 |
+
<show_in_store>1</show_in_store>
|
217 |
+
<sort_order>60</sort_order>
|
218 |
+
</scoring-repeat-after-days>
|
219 |
+
|
220 |
+
</fields>
|
221 |
+
</re-request>
|
222 |
+
|
223 |
+
<scoring-value-red translate="label">
|
224 |
+
<label>Configuration for solvency group red</label>
|
225 |
+
<sort_order>140</sort_order>
|
226 |
+
<show_in_default>1</show_in_default>
|
227 |
+
<show_in_website>1</show_in_website>
|
228 |
+
<show_in_store>1</show_in_store>
|
229 |
+
<fields>
|
230 |
+
<allowed-payment-methods translate="label">
|
231 |
+
<label>Allow following payment methods</label>
|
232 |
+
<frontend_type>multiselect</frontend_type>
|
233 |
+
<source_model>adminhtml/system_config_source_payment_allmethods</source_model>
|
234 |
+
<backend_model>adminhtml/system_config_backend_serialized</backend_model>
|
235 |
+
<sort_order>20</sort_order>
|
236 |
+
<show_in_default>1</show_in_default>
|
237 |
+
<show_in_website>1</show_in_website>
|
238 |
+
<show_in_store>1</show_in_store>
|
239 |
+
</allowed-payment-methods>
|
240 |
+
</fields>
|
241 |
+
</scoring-value-red>
|
242 |
+
|
243 |
+
<scoring-value-yellow translate="label">
|
244 |
+
<label>Configuration for solvency group yellow</label>
|
245 |
+
<sort_order>150</sort_order>
|
246 |
+
<show_in_default>1</show_in_default>
|
247 |
+
<show_in_website>1</show_in_website>
|
248 |
+
<show_in_store>1</show_in_store>
|
249 |
+
<fields>
|
250 |
+
<allowed-payment-methods translate="label">
|
251 |
+
<label>Allow following payment methods</label>
|
252 |
+
<frontend_type>multiselect</frontend_type>
|
253 |
+
<source_model>adminhtml/system_config_source_payment_allmethods</source_model>
|
254 |
+
<backend_model>adminhtml/system_config_backend_serialized</backend_model>
|
255 |
+
<sort_order>20</sort_order>
|
256 |
+
<show_in_default>1</show_in_default>
|
257 |
+
<show_in_website>1</show_in_website>
|
258 |
+
<show_in_store>1</show_in_store>
|
259 |
+
</allowed-payment-methods>
|
260 |
+
<additional-condition translate="label">
|
261 |
+
<label>Additional condition for this group</label>
|
262 |
+
<frontend_type>select</frontend_type>
|
263 |
+
<source_model>expercash_scoring/system_config_source_scoring_condition</source_model>
|
264 |
+
<sort_order>30</sort_order>
|
265 |
+
<show_in_default>1</show_in_default>
|
266 |
+
<show_in_website>1</show_in_website>
|
267 |
+
<show_in_store>1</show_in_store>
|
268 |
+
</additional-condition>
|
269 |
+
</fields>
|
270 |
+
</scoring-value-yellow>
|
271 |
+
|
272 |
+
<scoring-value-green translate="label">
|
273 |
+
<label>Configuration for solvency group green</label>
|
274 |
+
<sort_order>160</sort_order>
|
275 |
+
<show_in_default>1</show_in_default>
|
276 |
+
<show_in_website>1</show_in_website>
|
277 |
+
<show_in_store>1</show_in_store>
|
278 |
+
<fields>
|
279 |
+
<allowed-payment-methods translate="label">
|
280 |
+
<label>Allow following payment methods</label>
|
281 |
+
<frontend_type>multiselect</frontend_type>
|
282 |
+
<source_model>adminhtml/system_config_source_payment_allmethods</source_model>
|
283 |
+
<backend_model>adminhtml/system_config_backend_serialized</backend_model>
|
284 |
+
<sort_order>20</sort_order>
|
285 |
+
<show_in_default>1</show_in_default>
|
286 |
+
<show_in_website>1</show_in_website>
|
287 |
+
<show_in_store>1</show_in_store>
|
288 |
+
</allowed-payment-methods>
|
289 |
+
<additional-condition translate="label">
|
290 |
+
<label>Additional condition for this group</label>
|
291 |
+
<frontend_type>select</frontend_type>
|
292 |
+
<source_model>expercash_scoring/system_config_source_scoring_condition</source_model>
|
293 |
+
<sort_order>30</sort_order>
|
294 |
+
<show_in_default>1</show_in_default>
|
295 |
+
<show_in_website>1</show_in_website>
|
296 |
+
<show_in_store>1</show_in_store>
|
297 |
+
</additional-condition>
|
298 |
+
</fields>
|
299 |
+
</scoring-value-green>
|
300 |
+
|
301 |
+
</groups>
|
302 |
+
</expercash_scoring>
|
303 |
+
</sections>
|
304 |
+
</config>
|
app/code/community/Expercash/Scoring/sql/expercash_scoring_setup/mysql4-install-13.12.05.php
ADDED
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @category Expercash_Scoring
|
4 |
+
* @package Expercash_Scoring
|
5 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co.KG
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Expercash_Scoring_Sql_Setup
|
12 |
+
*
|
13 |
+
* @author Michael Lühr <michael.leuhr@netresearch.de>
|
14 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co.KG
|
15 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
16 |
+
*/
|
17 |
+
/* @var $installer Expercash_Scoring_Model_Resource_Setup */
|
18 |
+
|
19 |
+
$installer = $this;
|
20 |
+
$installer->startSetup();
|
21 |
+
|
22 |
+
$installer->run(
|
23 |
+
"
|
24 |
+
DROP TABLE IF EXISTS {$installer->getTable('expercash_scoring/solvency_check_result')};
|
25 |
+
CREATE TABLE {$installer->getTable('expercash_scoring/solvency_check_result')} (
|
26 |
+
`check_id` int(10) unsigned NOT NULL auto_increment,
|
27 |
+
`quote_id` int(10) unsigned,
|
28 |
+
`customer_id` int(10) unsigned,
|
29 |
+
`escore` varchar(10),
|
30 |
+
`escore_feature` varchar(10),
|
31 |
+
`created_at` timestamp default CURRENT_TIMESTAMP,
|
32 |
+
PRIMARY KEY (`check_id`),
|
33 |
+
FOREIGN KEY (`customer_id`) REFERENCES customer_entity(entity_id)
|
34 |
+
ON DELETE CASCADE
|
35 |
+
ON UPDATE CASCADE
|
36 |
+
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
37 |
+
"
|
38 |
+
);
|
39 |
+
|
40 |
+
|
41 |
+
$installer->endSetup();
|
app/code/community/Expercash/Scoring/sql/expercash_scoring_setup/mysql4-upgrade-13.12.05-13.12.20.php
ADDED
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ExperCash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
$installer = $this;
|
10 |
+
$installer->startSetup();
|
11 |
+
$conn = $installer->getConnection();
|
12 |
+
$table = $this->getTable('expercash_scoring/solvency_check_result');
|
13 |
+
$conn->addColumn(
|
14 |
+
$table,
|
15 |
+
'customer_gender',
|
16 |
+
'VARCHAR(1) NULL DEFAULT NULL'
|
17 |
+
);
|
18 |
+
$conn->addColumn(
|
19 |
+
$table,
|
20 |
+
'customer_prename',
|
21 |
+
'VARCHAR(64) NULL DEFAULT NULL'
|
22 |
+
);
|
23 |
+
$conn->addColumn(
|
24 |
+
$table,
|
25 |
+
'customer_name',
|
26 |
+
'VARCHAR(64) NULL DEFAULT NULL'
|
27 |
+
);
|
28 |
+
$conn->addColumn(
|
29 |
+
$table,
|
30 |
+
'customer_address1',
|
31 |
+
'VARCHAR(64) NULL DEFAULT NULL'
|
32 |
+
);
|
33 |
+
$conn->addColumn(
|
34 |
+
$table,
|
35 |
+
'customer_address2',
|
36 |
+
'VARCHAR(5) NULL DEFAULT NULL'
|
37 |
+
);
|
38 |
+
$conn->addColumn(
|
39 |
+
$table,
|
40 |
+
'customer_zip',
|
41 |
+
'VARCHAR(10) NULL DEFAULT NULL'
|
42 |
+
);
|
43 |
+
$conn->addColumn(
|
44 |
+
$table,
|
45 |
+
'customer_city',
|
46 |
+
'VARCHAR(32) NULL DEFAULT NULL'
|
47 |
+
);
|
48 |
+
$conn->addColumn(
|
49 |
+
$table,
|
50 |
+
'customer_country',
|
51 |
+
'VARCHAR(2) NULL DEFAULT NULL'
|
52 |
+
);
|
53 |
+
$conn->addColumn(
|
54 |
+
$table,
|
55 |
+
'customer_date_of_birth',
|
56 |
+
'DATE NULL DEFAULT NULL'
|
57 |
+
);
|
58 |
+
|
59 |
+
$installer->endSetup();
|
app/code/community/Expercash/Scoring/sql/expercash_scoring_setup/mysql4-upgrade-13.12.20-14.01.08.php
ADDED
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* @author Michael Lühr <michael.luehr@netresearch.de>
|
4 |
+
* @category Netresearch
|
5 |
+
* @package ExperCash_Scoring
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co. KG (http://www.netresearch.de)
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
$installer = $this;
|
10 |
+
$installer->startSetup();
|
11 |
+
$conn = $installer->getConnection();
|
12 |
+
$table = $this->getTable('expercash_scoring/solvency_check_result');
|
13 |
+
$conn->addColumn(
|
14 |
+
$table,
|
15 |
+
'escore_value',
|
16 |
+
'INT(5) NULL DEFAULT NULL'
|
17 |
+
);
|
18 |
+
|
19 |
+
|
20 |
+
$installer->endSetup();
|
app/design/adminhtml/default/default/layout/expercash_scoring.xml
ADDED
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<!--
|
3 |
+
/**
|
4 |
+
* Magento
|
5 |
+
*
|
6 |
+
* NOTICE OF LICENSE
|
7 |
+
*
|
8 |
+
* This source file is subject to the Academic Free License (AFL 3.0)
|
9 |
+
* that is bundled with this package in the file LICENSE_AFL.txt.
|
10 |
+
* It is also available through the world-wide-web at this URL:
|
11 |
+
* http://opensource.org/licenses/afl-3.0.php
|
12 |
+
* If you did not receive a copy of the license and are unable to
|
13 |
+
* obtain it through the world-wide-web, please send an email
|
14 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
15 |
+
*
|
16 |
+
* DISCLAIMER
|
17 |
+
*
|
18 |
+
* Do not edit or add to this file if you wish to upgrade Magento to newer
|
19 |
+
* versions in the future. If you wish to customize Magento for your
|
20 |
+
* needs please refer to http://www.magentocommerce.com for more information.
|
21 |
+
*
|
22 |
+
* @category design
|
23 |
+
* @package default_default
|
24 |
+
* @copyright Copyright (c) 2009 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
|
25 |
+
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
26 |
+
*/
|
27 |
+
-->
|
28 |
+
<layout version="0.1.0">
|
29 |
+
<adminhtml_customer_edit>
|
30 |
+
<reference name="customer_edit_tabs">
|
31 |
+
<block type="expercash_scoring/adminhtml_customer_edit_tab_expercash_scoring" name="customer_edit_tab_expercash_scoring" after="orders" />
|
32 |
+
<action method="addTab"><name>customer_edit_tab_expercash_scoring</name><block>customer_edit_tab_expercash_scoring</block></action>
|
33 |
+
</reference>
|
34 |
+
</adminhtml_customer_edit>
|
35 |
+
|
36 |
+
</layout>
|
app/design/frontend/base/default/layout/.gitkeep
ADDED
File without changes
|
app/design/frontend/base/default/layout/scoring.xml
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<!--
|
3 |
+
/**
|
4 |
+
* @category Layout
|
5 |
+
* @author Sebastian Ertner <sebastian.ertner@netresearch.de>
|
6 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co.KG
|
7 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
8 |
+
*/
|
9 |
+
-->
|
10 |
+
|
11 |
+
|
12 |
+
<layout version="0.1.0">
|
13 |
+
<checkout_onepage_index>
|
14 |
+
<reference name="head">
|
15 |
+
<action method="addJs"><script>expercash/scoring.js</script></action>
|
16 |
+
</reference>
|
17 |
+
</checkout_onepage_index>
|
18 |
+
</layout>
|
app/design/frontend/base/default/template/expercash-scoring/scoring/agreement.phtml
ADDED
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<div id="scoring_agreement">
|
2 |
+
<ul>
|
3 |
+
<li>
|
4 |
+
<input type="checkbox" class="checkbox"
|
5 |
+
title="<?php echo $this->__(
|
6 |
+
'Confirm to perform the solvency check'
|
7 |
+
) ?>"
|
8 |
+
name="billing[scoring_check_confirmation]"
|
9 |
+
value="scoring_check_confirmation"
|
10 |
+
id="billing:scoring_check_confirmation"/>
|
11 |
+
<label style="float: none;" id="scoring_terms_label"
|
12 |
+
for="billing:scoring_check_confirmation"><?php print $this->__(
|
13 |
+
'Confirm to perform the solvency check'
|
14 |
+
) ?></label>
|
15 |
+
</li>
|
16 |
+
<li>
|
17 |
+
|
18 |
+
</li>
|
19 |
+
</ul>
|
20 |
+
<?php echo $this->escapeHtml($this->getTermsAndConditionsText()); ?>
|
21 |
+
</div>
|
22 |
+
<script type="text/javascript">
|
23 |
+
var experCashValidation = new ExperCashValidation();
|
24 |
+
experCashValidation.appendSolvencyCheckToBilling();
|
25 |
+
Event.observe(window, 'load', function() {
|
26 |
+
checkout.accordion.openSection = checkout.accordion.openSection.wrap(function(originalOpenSectionMethod, section) {
|
27 |
+
if ((section == 'opc-billing' || section.id == 'opc-billing')
|
28 |
+
&& $('billing:scoring_check_confirmation')) {
|
29 |
+
$('billing:scoring_check_confirmation').checked = false;
|
30 |
+
}
|
31 |
+
originalOpenSectionMethod(section);
|
32 |
+
});
|
33 |
+
});
|
34 |
+
</script>
|
app/etc/modules/Expercash_Scoring.xml
ADDED
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<!--
|
3 |
+
/*
|
4 |
+
* Magento
|
5 |
+
*
|
6 |
+
* NOTICE OF LICENSE
|
7 |
+
*
|
8 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
9 |
+
* that is bundled with this package in the file LICENSE.txt.
|
10 |
+
* It is also available through the world-wide-web at this URL:
|
11 |
+
* http://opensource.org/licenses/osl-3.0.php
|
12 |
+
* If you did not receive a copy of the license and are unable to
|
13 |
+
* obtain it through the world-wide-web, please send an email
|
14 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
15 |
+
*
|
16 |
+
* @category Expercash
|
17 |
+
* @package Expercash_Scoring
|
18 |
+
* @copyright Copyright (c) 2013 Netresearch GmbH & Co.KG
|
19 |
+
* @author Sebastian Ertner <sebastian.ertner@netresearch.de>
|
20 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
21 |
+
*/
|
22 |
+
-->
|
23 |
+
|
24 |
+
|
25 |
+
|
26 |
+
<config>
|
27 |
+
<modules>
|
28 |
+
<Expercash_Scoring>
|
29 |
+
<active>true</active>
|
30 |
+
<codePool>community</codePool>
|
31 |
+
</Expercash_Scoring>
|
32 |
+
</modules>
|
33 |
+
</config>
|
app/locale/de_DE/Expercash_Scoring.csv
ADDED
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
"Scoring", "Bonitätsprüfung"
|
2 |
+
"General settings", "Allgemeine Einstellungen"
|
3 |
+
"Enabled", "Aktiviert"
|
4 |
+
"Project Id", "Projekt ID"
|
5 |
+
"API-Key", "Sicherheitsschlüssel Gateway (epi)"
|
6 |
+
"Terms Addition", "Einwilligungsbestätigung"
|
7 |
+
"Solvency Check Settings", "Einstellungen zur Bonitätsprüfung"
|
8 |
+
"Minimum total amount to check solvency", "Mindestbetrag um eine Bonitätsprüfung durchführen zu können"
|
9 |
+
"Skip solvency validation for selected payment methods", "Für diese Zahlarten keine Bonitätsprüfung durchführen"
|
10 |
+
"Skip solvency validation for selected customer groups", "Für diese Kundengruppen keine Bonitätsprüfung durchführen"
|
11 |
+
"If no data could be obtained, handle customer as", "Wenn kein Ergebnis ermittelt werden konnte, ordne Kunden folgenden Ampelwert zu"
|
12 |
+
"Response Validity", "Gültigkeit des Ergebnisses"
|
13 |
+
"Maximum number of checks per session", "Maximale Anzahl an Bonitätsprüfungen pro Session"
|
14 |
+
"If maximum number of checks per session exceeded, handle customer as solvency group", "Falls die maximale Anzahl an Prüfungen pro Session überschritten ist, ordne den Kunden folgenden Ampelwert zu"
|
15 |
+
"Maximum number of checks per day", "Maximale Anzahl an Prüfungen pro Tag"
|
16 |
+
"If maximum number of checks per day exceeded, handle customer as solvency group", "Wenn die maximale Anzahl pro Tag überschritten ist, ordne den Kunden folgenden Ampelwert zu"
|
17 |
+
"Scoring expires after X days", "Ergebnis der Bonitätsprüfung ist für X Tage gültig"
|
18 |
+
"Perform new check after X days", "Führe erneut die Bonitätsprüfung nach X Tagen durch"
|
19 |
+
"Perform solvency check for countries", "Führe Bonitätsprüfung für folgende Länder durch"
|
20 |
+
"Only Germany is supported", "Nur Deutschland wird zur Zeit unterstützt"
|
21 |
+
"Configuration for solvency group red", "Konfiguration für Gruppe mit Ampelwert 'rot'"
|
22 |
+
"Configuration for solvency group yellow", "Konfiguration für Gruppe mit Ampelwert 'gelb'"
|
23 |
+
"Configuration for solvency group green", "Konfiguration für Gruppe mit Ampelwert 'grün'"
|
24 |
+
"Allow following payment methods", "Folgende Zahlarten zulassen"
|
25 |
+
"red", "rot"
|
26 |
+
"yellow", "gelb"
|
27 |
+
"green", "grün"
|
28 |
+
"-- none --", "-- keine --"
|
29 |
+
"Person known", "Person bekannt"
|
30 |
+
"Domestic home or person known", "Haushalt oder Person bekannt"
|
31 |
+
"Confirm to perform the solvency check", "Einwilligung zur Bonitätsprüfung"
|
32 |
+
"Please confirm to the terms and conditions", "Bitte bestätigen Sie die allgemeinen Geschäftsbedingungen"
|
33 |
+
"Log enabled", "Log aktivieren"
|
34 |
+
"Additional condition for this group", "Zusätzliche Bedingung die für diese Gruppe gelten muss"
|
35 |
+
"Scoring Information", "Scoringinformationen"
|
36 |
+
"Scoring Information", "Bonitätsdaten"
|
37 |
+
"Person known, but undeliverable", "Person od. Haushalt bekannt/Nicht zustellbar"
|
38 |
+
"Address known, but no personal information", "Adresse bekannt / keine Angaben zur Person verfügbar"
|
39 |
+
"No postal information given", "keine eindeutigen Postinformationen verfügbar"
|
40 |
+
"Person known, but dead", "Person bekannt, verstorben"
|
41 |
+
"Address wrong", "Adresse postalisch falsch"
|
42 |
+
"Scoring value", "Scoring Wert (Ampel)"
|
43 |
+
"Escore Feature", "Identifizierungsstatus"
|
44 |
+
"created at", "Erstellt am"
|
45 |
+
"Action", "Aktion"
|
46 |
+
"Delete scoring information", "Alle Bonitätsdaten löschen"
|
47 |
+
"Delete", "Löschen"
|
48 |
+
"expercash_scoring::male", "männlich"
|
49 |
+
"expercash_scoring::female", "weiblich"
|
50 |
+
"Customer gender", "Geschlecht"
|
51 |
+
"Customer prename", "Vorname"
|
52 |
+
"Customer name", "Name"
|
53 |
+
"Customer street", "Straße"
|
54 |
+
"Customer city", "Stadt"
|
55 |
+
"Customer zip", "PLZ"
|
56 |
+
"Customer country", "Land"
|
57 |
+
"Customer date of birth", "Geburtsdatum"
|
58 |
+
"Always offer the following payment methods", "Die folgenden Zahlarten immer anbieten"
|
59 |
+
"Escore Value", "Scoring Wert"
|
60 |
+
"Overwrites settings for scoring values", "Diese Einstellung überschreibt die Konfiguration für diese Zahlarten, falls diese durch die Ampelwerte ausgeblendet werden"
|
app/locale/en_US/Expercash_Scoring.csv
ADDED
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
"Scoring", "Scoring"
|
2 |
+
"General settings", "General settings"
|
3 |
+
"Enabled", "Enabled"
|
4 |
+
"Project Id", "Project Id"
|
5 |
+
"API-Key", "Paymentkey Gateway (epi)"
|
6 |
+
"Terms Addition", "Terms Addition"
|
7 |
+
"Solvency Check Settings", "Solvency Check Settings"
|
8 |
+
"Minimum total amount to check solvency", "Minimum total amount to check solvency"
|
9 |
+
"Skip solvency validation for selected payment methods", "Skip solvency validation for selected payment methods"
|
10 |
+
"Skip solvency validation for selected customer groups", "Skip solvency validation for selected customer groups"
|
11 |
+
"If no data could be obtained, handle customer as", "If no data could be obtained, handle customer as"
|
12 |
+
"Response Validity", "Response Validity"
|
13 |
+
"Maximum number of checks per session", "Maximum number of checks per session"
|
14 |
+
"If maximum number of checks per session exceeded, handle customer as solvency group", "If maximum number of checks per session exceeded, handle customer as solvency group"
|
15 |
+
"Maximum number of checks per day", "Maximum number of checks per day"
|
16 |
+
"If maximum number of checks per day exceeded, handle customer as solvency group", "If maximum number of checks per day exceeded, handle customer as solvency group"
|
17 |
+
"Scoring expires after X days", "Scoring expires after X days"
|
18 |
+
"Perform new check after X days", "Perform new check after X days"
|
19 |
+
"Perform solvency check for countries", "Perform solvency check for countries"
|
20 |
+
"Only Germany is supported", "Only Germany is supported"
|
21 |
+
"Solvency check result red", "Solvency check result red"
|
22 |
+
"Solvency check result yellow", "Solvency check result yellow"
|
23 |
+
"Solvency check result green", "Solvency check result green"
|
24 |
+
"Allow following payment methods", "Allow following payment methods"
|
25 |
+
"red", "red"
|
26 |
+
"yellow", "yellow"
|
27 |
+
"green", "green"
|
28 |
+
"-- none --", "-- none --"
|
29 |
+
"Person known", "person known"
|
30 |
+
"Domestic home or person known", "domestic home or person known"
|
31 |
+
"Confirm to perform the solvency check", "Confirmation to perform the solvency check"
|
32 |
+
"Please confirm to the terms and conditions", "Please confirm to the terms and conditions"
|
33 |
+
"Log enabled", "Log enabled"
|
34 |
+
"Additional condition for this group", "Additional condition for this group"
|
35 |
+
"Scoring Information", "Scoring Information"
|
36 |
+
"Person known, but undeliverable", "Person known, but undeliverable"
|
37 |
+
"Address known, but no personal information", "Address known, but no personal information"
|
38 |
+
"No postal information given", "No postal information given"
|
39 |
+
"Person known, but dead", "Person known, but dead"
|
40 |
+
"Address wrong", "Address wrong"
|
41 |
+
"Scoring value", "Scoring value"
|
42 |
+
"Escore Feature", "Additional identity information"
|
43 |
+
"created at", "Created at"
|
44 |
+
"Action", "Action"
|
45 |
+
"Delete scoring information", "Delete all scoring information"
|
46 |
+
"Delete", "Delete"
|
47 |
+
"expercash_scoring::male", "male"
|
48 |
+
"expercash_scoring::female", "female"
|
49 |
+
"Customer gender", "gender"
|
50 |
+
"Customer prename", "Customer firstname"
|
51 |
+
"Customer name", "Customer name"
|
52 |
+
"Customer street", "Street address"
|
53 |
+
"Customer city", "City"
|
54 |
+
"Customer country", "Country"
|
55 |
+
"Customer zip", "Zip"
|
56 |
+
"Customer date of birth", "Customers birth date"
|
57 |
+
"Always offer the following payment methods", "Always offer the following payment methods"
|
58 |
+
"Escore Value", "Scoring value"
|
59 |
+
"Overwrites settings for scoring values", "Overwrites the Scoring settings, if the payment method is not allowed for specific scoring values"
|
doc/Expercash_Scoring/.gitkeep
ADDED
File without changes
|
doc/Expercash_Scoring/ChangeLog.pdf
ADDED
@@ -0,0 +1,152 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
%PDF-1.4
|
2 |
+
%���� ReportLab Generated PDF document http://www.reportlab.com
|
3 |
+
% 'BasicFonts': class PDFDictionary
|
4 |
+
1 0 obj
|
5 |
+
% The standard fonts dictionary
|
6 |
+
<< /F1 2 0 R
|
7 |
+
/F2 3 0 R >>
|
8 |
+
endobj
|
9 |
+
% 'F1': class PDFType1Font
|
10 |
+
2 0 obj
|
11 |
+
% Font Helvetica
|
12 |
+
<< /BaseFont /Helvetica
|
13 |
+
/Encoding /WinAnsiEncoding
|
14 |
+
/Name /F1
|
15 |
+
/Subtype /Type1
|
16 |
+
/Type /Font >>
|
17 |
+
endobj
|
18 |
+
% 'F2': class PDFType1Font
|
19 |
+
3 0 obj
|
20 |
+
% Font Helvetica-Bold
|
21 |
+
<< /BaseFont /Helvetica-Bold
|
22 |
+
/Encoding /WinAnsiEncoding
|
23 |
+
/Name /F2
|
24 |
+
/Subtype /Type1
|
25 |
+
/Type /Font >>
|
26 |
+
endobj
|
27 |
+
% 'Page1': class PDFPage
|
28 |
+
4 0 obj
|
29 |
+
% Page dictionary
|
30 |
+
<< /Contents 8 0 R
|
31 |
+
/MediaBox [ 0
|
32 |
+
0
|
33 |
+
595.2756
|
34 |
+
841.8898 ]
|
35 |
+
/Parent 7 0 R
|
36 |
+
/Resources << /Font 1 0 R
|
37 |
+
/ProcSet [ /PDF
|
38 |
+
/Text
|
39 |
+
/ImageB
|
40 |
+
/ImageC
|
41 |
+
/ImageI ] >>
|
42 |
+
/Rotate 0
|
43 |
+
/Trans << >>
|
44 |
+
/Type /Page >>
|
45 |
+
endobj
|
46 |
+
% 'R5': class PDFCatalog
|
47 |
+
5 0 obj
|
48 |
+
% Document Root
|
49 |
+
<< /Outlines 9 0 R
|
50 |
+
/PageLabels 10 0 R
|
51 |
+
/PageMode /UseNone
|
52 |
+
/Pages 7 0 R
|
53 |
+
/Type /Catalog >>
|
54 |
+
endobj
|
55 |
+
% 'R6': class PDFInfo
|
56 |
+
6 0 obj
|
57 |
+
<< /Author ()
|
58 |
+
/CreationDate (D:20150105230534-01'00')
|
59 |
+
/Creator (\(unspecified\))
|
60 |
+
/Keywords ()
|
61 |
+
/Producer (ReportLab PDF Library - www.reportlab.com)
|
62 |
+
/Subject (\(unspecified\))
|
63 |
+
/Title (ChangeLog) >>
|
64 |
+
endobj
|
65 |
+
% 'R7': class PDFPages
|
66 |
+
7 0 obj
|
67 |
+
% page tree
|
68 |
+
<< /Count 1
|
69 |
+
/Kids [ 4 0 R ]
|
70 |
+
/Type /Pages >>
|
71 |
+
endobj
|
72 |
+
% 'R8': class PDFStream
|
73 |
+
8 0 obj
|
74 |
+
% page stream
|
75 |
+
<< /Length 529 >>
|
76 |
+
stream
|
77 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
78 |
+
q
|
79 |
+
1 0 0 1 62.69291 769.3701 cm
|
80 |
+
q
|
81 |
+
0 .533333 .603922 rg
|
82 |
+
BT 1 0 0 1 0 4 Tm /F2 20 Tf 24 TL 179.9449 0 Td (ChangeLog) Tj T* -179.9449 0 Td ET
|
83 |
+
Q
|
84 |
+
Q
|
85 |
+
q
|
86 |
+
1 0 0 1 62.69291 759.3701 cm
|
87 |
+
Q
|
88 |
+
q
|
89 |
+
1 0 0 1 56.69291 56.69291 cm
|
90 |
+
0 0 0 rg
|
91 |
+
BT /F1 10 Tf 12 TL ET
|
92 |
+
q
|
93 |
+
1 0 0 1 6 3 cm
|
94 |
+
q
|
95 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F1 10 Tf 0 0 0 rg (Stand: 05.01.2015) Tj T* ET
|
96 |
+
Q
|
97 |
+
Q
|
98 |
+
q
|
99 |
+
1 0 0 1 246.9449 3 cm
|
100 |
+
q
|
101 |
+
0 0 0 rg
|
102 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 215.0449 0 Td (1/1) Tj T* -215.0449 0 Td ET
|
103 |
+
Q
|
104 |
+
Q
|
105 |
+
q
|
106 |
+
Q
|
107 |
+
Q
|
108 |
+
|
109 |
+
endstream
|
110 |
+
endobj
|
111 |
+
% 'R9': class PDFOutlines
|
112 |
+
9 0 obj
|
113 |
+
<< /Count 0
|
114 |
+
/Type /Outlines >>
|
115 |
+
endobj
|
116 |
+
% 'R10': class PDFPageLabels
|
117 |
+
10 0 obj
|
118 |
+
% Document Root
|
119 |
+
<< /Nums [ 0
|
120 |
+
11 0 R ] >>
|
121 |
+
endobj
|
122 |
+
% 'R11': class PDFPageLabel
|
123 |
+
11 0 obj
|
124 |
+
% None
|
125 |
+
<< /S /D
|
126 |
+
/St 1 >>
|
127 |
+
endobj
|
128 |
+
xref
|
129 |
+
0 12
|
130 |
+
0000000000 65535 f
|
131 |
+
0000000113 00000 n
|
132 |
+
0000000221 00000 n
|
133 |
+
0000000386 00000 n
|
134 |
+
0000000559 00000 n
|
135 |
+
0000000836 00000 n
|
136 |
+
0000000991 00000 n
|
137 |
+
0000001243 00000 n
|
138 |
+
0000001348 00000 n
|
139 |
+
0000001975 00000 n
|
140 |
+
0000002057 00000 n
|
141 |
+
0000002150 00000 n
|
142 |
+
trailer
|
143 |
+
<< /ID
|
144 |
+
% ReportLab generated PDF document -- digest (http://www.reportlab.com)
|
145 |
+
[(\026\016\202#MxY\331f\314R\026\314\032+\317) (\026\016\202#MxY\331f\314R\026\314\032+\317)]
|
146 |
+
|
147 |
+
/Info 6 0 R
|
148 |
+
/Root 5 0 R
|
149 |
+
/Size 12 >>
|
150 |
+
startxref
|
151 |
+
2197
|
152 |
+
%%EOF
|
doc/Expercash_Scoring/EndUserDocumentation.pdf
ADDED
@@ -0,0 +1,622 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
%PDF-1.4
|
2 |
+
%���� ReportLab Generated PDF document http://www.reportlab.com
|
3 |
+
% 'BasicFonts': class PDFDictionary
|
4 |
+
1 0 obj
|
5 |
+
% The standard fonts dictionary
|
6 |
+
<< /F1 2 0 R
|
7 |
+
/F2 9 0 R >>
|
8 |
+
endobj
|
9 |
+
% 'F1': class PDFType1Font
|
10 |
+
2 0 obj
|
11 |
+
% Font Helvetica
|
12 |
+
<< /BaseFont /Helvetica
|
13 |
+
/Encoding /WinAnsiEncoding
|
14 |
+
/Name /F1
|
15 |
+
/Subtype /Type1
|
16 |
+
/Type /Font >>
|
17 |
+
endobj
|
18 |
+
% 'FormXob.0ee3c21c0e0af2f576dd3afb463ffa7a': class PDFImageXObject
|
19 |
+
3 0 obj
|
20 |
+
<< /BitsPerComponent 8
|
21 |
+
/ColorSpace /DeviceRGB
|
22 |
+
/Filter [ /ASCII85Decode
|
23 |
+
/FlateDecode ]
|
24 |
+
/Height 200
|
25 |
+
/Length 3350
|
26 |
+
/SMask 4 0 R
|
27 |
+
/Subtype /Image
|
28 |
+
/Type /XObject
|
29 |
+
/Width 400 >>
|
30 |
+
stream
|
31 |
+
Gb"0WBh/ur+3/@YD)F+Rbf\(#9S*V/8tWK<!i]$pcq4i&GI"nPR3e7Q&G7S'$MnH^7J*7d-Y:uFQgK>Ud&L]YofrBR&;ReSSs_Sph;>p7f;"sZchX(ehdc8I\^%n[lPBO$zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz!!!#o:F[qJc-=KR2/6+bmbO?kDdL2-rJ68ckih6kjQ,t*oUMGAP*2!C4\*:`KpW2V%;jb%@C'Rj3csT4Vb`qDN/XT+QPL8LgqA(/kKfbQ%B@K=I_0djC2.Jt-Ri5Vp,5CD<HWHWeu`/gFQoO*CRmM/b0SE6o]_Ri;9[^mZ82$Vr,sE:Z'&:&&o;Ac]2bn4e##i$H1IbtK.8L_8ZuXEN[[`okg?1!7e_&hd%U1#gKWLM[Vab7(Dg9oaILce=COI[hp1:9<`7+7JrTB-MsHhK_Es:g%C(8mRQ,;]iZomFQsaiSg%Xsm(G8tVA2i\rRjUN:LGS+()KdeWbAV%a(FuIr-G`/Ejb:O'#FCdDHTA%<r5O^8=&`/K3CD1`['VdgDrNa?R@3<o2^'=f.kBr(M%fXPh\QAp<`YNOQ(9sYCAIG^?+Y:QD*N@=k\o@m.G!('eI#Mi5*k*Oj=aP3b=mL^SMg?8j2\&nT>\"uo&\'lp?c(h@RWm]8m#2_DuIWiil-fl[1)>^+[7;#7fKZcTV0S`SND%a,Ugr`lI;ef?Epc?HhQe\mj1_0`Kd*ij5e=GQ1eGf/ZTOm+Wb/\KtYWe_q1>7COH-s7n6'V]6;Gq6.HkDB@!/$s#=uU^cE,5$lC+2R58K9eN%R*^>7.Id%E\nhnN6\s2U0BLCG27ke:og2O2#%Bj$u,$h5>Q.\'K;c'pZPa,`/)FQq68_hScj%B@:,J,]@kq8^k/d&0[3RWO&MjG@OpGI_\OJu(JcKI0E^aR-t>ZDG>1IK'.ikg6#DK"+!mr:mOCJo+[l-br&2aFjo`Q!^q6Pp'];r:t4@C,J4).7rC%G3rIsmb-:HEoV&n\lkTq\8gQi`pMNi(T0r-pS+CV,!J1sc5A]eXORk$[&d#QKm8[c(!\?0oB/oe]?9*kiK#$CEck3"^A7*GXcp4>-751'2n\CgIf4RcF2!)"[c-lFnDV:YG3$`,,BAg#(#ek\e7i'V!"8<>'.U@g^8e1_/hToE=gVk)gOi\PJ+i5si>?V'gppVcSiqF$DAF!'pAF`-964FD@"I*RfW\dZp1=$giH!YhKaXHIWR.q3!>aZ\-<03/r.YY"jIFf'>FXD>me1\QRQl&d@!UeVR58XG4(H8=\_3&f6S-JbS8F.3QWkLjE59T0M!g#73r*<;$8&:l?m-S%6A;SbJ,K)HC"&r"e=TKD1_+7LJ(Li/o#Bh:Rt(8)`R%IuM2mU^S*f(GgX;Tb92"AYipbsseg]#&Du`kMBuDn]WtSka*b7Tk`la>Z0g^oS\8e8KK<"*9<`U.<Alhr2AE[,t==?+aN/SI;\sDKkC""E>fsl%^SF=bUZ")n>c'pXRcSV>,FTO,4K1r5j=S\JW*'%d3q!fC6C+4Z'jN6ud['VYWa,qT:apk4AR::<aL*95#g?S8"o&NKRmiBra3WU#U5pfQEXSdng-fh4TrV@rQC4j3j1<_F74T+m<f=t[@p$.gp+ubTJc)isVrr)`;btafjV,TNT,"0^M8P*onBu3cIK-\AtdfqDQ#XTHQGjEp43N?AsG)Coe?g^-9Y,SBTgsNK?bEh%hMX)hhV%+M,aR<pq:;Ds@n(p4(g6oO!pT@q6c8/0s.Wpi+QtP-GAK!j*@i8XdGTfR7D;%s/;!lGCdWjlrQ1@S]HM..5;U:ptjd0#M>,@T8Mi<UZRu)3p3i](8jia!2AlM`oo1Tg`8f]0#k*\,@R77b9=N8[Z5Kcp`g.H?]mE9@p=Iejt?G1@=L=gtRqK9^LqtKP0B$0DhX!]h>2,UBEWTrb`3AVj'_Ki!b9;N,]&G&R7ZqM\MBe6%U5:a4pc9/j[hnJZ^=]nm:j5S%9jc-um^+%@\E4kbTA\nW`,%mABO$F()WtSka*b7Tk`laX7Qci5QQS!).[s>^HRhOf@iktkk9q+'3`Z7-afUK5+Q3fLQ#>HhX[Eu3?!>aZ\-<+Z[]]&h_q"T(E#.9Tnp?gW2p$9d1k09ACs!V3%p[4Tc3?,^,fT#X[9a[qTQIQ;G&.^Oi6=],<+$VAJV5C,90W;\_0k84Vr)mWDVX6C%$V@n^l-lQ$mu@[91]-q8ml]'PQIQ;G&.^Oi6=]*d?c+X5dNf>-[?lC4i5(L>4*9\Jm5[t43)ORjjaL&=U0(ML[&d#QKm8[c'cJT@pa-$*O,^Z_gi_b/qt@.'bEa<ZC"94`Xe5AeS?q2,U?1u+L2YPpZtY`q9G:T1-br&2aFjn+Q2g@4KAkCVdaD%&#Bc1oJ,]A-g+6@1^r`*>8kS/VZ*CPDT5GmbM\*kEC8#3]!\D9B9W6<<q:sb13@?F3cK&b:gg4l`r(EA/L",8Uji^E]>Z4R23-009I58d\`H%D,rDS4,X$'We-br&2aFjmPQ*73f1>EDECtUSQ#BcWq]mFrj9<lJ3SEJ1g/%=%*I=66ef<fU&<[Y[L4NN0_kEYf?53.NULhG&*\N6ZL`I,RI$jq9*H-YU>H`Og!mmFg7o;92LF]qfn^d:0)KF6n-?bLcn+_8]X-#O6n-,7+*>^hcD]mB?F*r0PbcD*mjQ5eS*hF(pdV;]nP[GGSjSX.e4YRh=#Tu'C_hnFO)qp>&4Ua5I@c+QDCr:OFE#7hk4C=Gdln,.H;,4OR/LX('0M>nPAr$TF89W50sH#XmgSXnT2712KWR$\_U#Iq:Wh#?dn\n0Pja`Wq4>ks&W&piVU:;X]r7qh?bK3WY]%d*b7T+SX$CXWN!&'IduF:Pq,r8q<+B8.p&UFVUkT+qDN3E>ePG`bFf@@afhZ3_dm7eA,#EICYl+jW6"^Yo\qu6a%e&1;S<&<nK8Jp68T;;"#"#qoQ!e$Hl[@8PPOn;f8PXshjJ]Vgj//4V'f'1/1W4af?RAr<T6@6baC7;<iehc9_<0T6:@'(]hkE!H@?fBNsD(LiOnM?HM"FfMimTs6iIJ6X'bn`83^n@/18%iF66/O:Y;pE9D/3@`#]FETu(u\`MLiOl-o$JT%EAk<c;]!cBe=phnS(<4BWEYqV(ZM4s&'K4hhH2a+I'a0J@-RBP<#&%AKSkioB'Gp[4TDSt;44<DZM2kKY+B#'IZ8DZ!s'bS1kAq>'gm#mi)nf!/`*]Y(m<s30a@/_0II&:6O\"T2(f8P)ZPN]?SW-RUigeh$`+i]iThP1%e,ZEpm`SiuE5':]('zzzzzzzzzzzzzzzzzzzzz603Ui]ufI~>endstream
|
32 |
+
endobj
|
33 |
+
% 'FormXob.dd76c9b6f61d556cc13a6115583884a2': class PDFImageXObject
|
34 |
+
4 0 obj
|
35 |
+
<< /BitsPerComponent 8
|
36 |
+
/ColorSpace /DeviceGray
|
37 |
+
/Decode [ 0
|
38 |
+
1 ]
|
39 |
+
/Filter [ /ASCII85Decode
|
40 |
+
/FlateDecode ]
|
41 |
+
/Height 200
|
42 |
+
/Length 55
|
43 |
+
/Subtype /Image
|
44 |
+
/Type /XObject
|
45 |
+
/Width 400 >>
|
46 |
+
stream
|
47 |
+
Gb"0;JH,ZM!5fq/l5edi<<3("zzzzzzzzzzzzzzzzzz!!'eR786pr~>endstream
|
48 |
+
endobj
|
49 |
+
% 'FormXob.81c267fdcecc4f3794af4997f71c7851': class PDFImageXObject
|
50 |
+
5 0 obj
|
51 |
+
<< /BitsPerComponent 8
|
52 |
+
/ColorSpace /DeviceRGB
|
53 |
+
/Filter [ /ASCII85Decode
|
54 |
+
/FlateDecode ]
|
55 |
+
/Height 200
|
56 |
+
/Length 4191
|
57 |
+
/SMask 4 0 R
|
58 |
+
/Subtype /Image
|
59 |
+
/Type /XObject
|
60 |
+
/Width 400 >>
|
61 |
+
stream
|
62 |
+
Gb"0WI8![A*5HPZcnn_+$q\hT%@KrHC+9-ZAkUnlhaj6)XZn;;9O!1,XZ;5IP,MT'X"@qaXjk=1XfWBsFWj1fMA9R'[].fQm")*/Hoe$^S^,4OS9rS-\3.7hk:_7TF+<BNcL:7An&'R17KEJhzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz!!#8NC1q:ZXK7pJB?p;Bj"iJIqtBEHQBmi!Occ9.?W:!(;,L1t?Q\nW/INic80h);>J"Y#WgPYUMN3E"):G]q^XUb40n<,r7ST7(Tt%UWmFnu&[r4K[r4&k(s+eS\@7dVbPERZ0i.Adt#EKibo'39ZSiqFDBk_9U9hePbe%'P_imaqS+7Y*s+5YDmTfGZk;RH2GHah_`gGa'-S=?"KPM0T7?++1ZL>RL\h.n[8(hOI\:atki]mK2&\`2(0Vr+;q75!0b\om>!*^,roRJm_2f$nEtd%P[?H0;>9]6^b]RD8Oc^AG(q+Q%J-*IkaamF\[R`/#"3'>3tc9>qs(ViEkoaXF#O;EfL'n?coY]QW!T,pd-Z]QnXBFhL#gs"3-Im36_%[r1$U_jr.MrOc=HGd6BRDnYgEJ%a&)rql/L.p&18\U=3n&O`re:]+c<;c"o]gpg3$J!orpFXh]YEPopkI>-q7VsAgC@&6ACnHTI>&;`eaN_m(p/cGA!74cF;iaV)ZUIU@t.4Nr\F(]Q8Zfn?q[8e3'Lng>m++AIYQncn[ig9Y41M8Q-<hGG3@L=AlETFiMfs5L2IH-;G<`W8hh7L.qWTiT<Ihop8#@]&VSnr(RfWo(HppdinMCV"rgouZ=WO$6`M@tinU&tW1]_^ooX&lJW-n#XRcH_go7u/7:r3;M^%4Uh&$lL8h\#-#LAqUt-I*j6lk*YVIisoY$XK8Li?[g[V/$ZE1%Mk9<QRl:6Q+7_$W'VUUhgb\)b-pR!l"+F;/M/P8Rl<5`hK."+!s];E;fT^thkCi-?gH:FF8ckdA7QZ@F=9nTl;Q]#eL:HAg9bQK,@#HKFn-mRhKuHX0gG9R1Wh&r?[r$X^](5hrni2%D8qMPb2uJ_op!b1qQ*aAOHa*si<<enace*14XdLd(HXqu'c$]EpCBc6_ocN;SiV"/d@s'%K\YA<e#-!^Y>ZH6r!u$i;#YBREq8t^J+']=GMdfrg;ob2o[-1#`[i<=Gi=?sHZ?^bktaWqr:,P%QB<DJURQ2:rDl-L9QmHJ8BTh;o8V2_S2kZEgY5H.-n6^(fr"K[2lt4>m@#nJPTXH84PlWTNLuQ(-bo6)@un0:?=$qj2]anqSC]JK>e!UJ4CZ57nQXOZ(6M-5-RVEEZXCTNY<cFGX[4-ZMg+:&U<5W<Sj5UV2lt4>mC@<$PV4(V;cCXg^:8@Oc5HZP`ugXT)*<#CbN?tAU/*oAKVpPSrqYa"mb+(J^?I;5\))F(N[)Dui;Q&'=faq4.3CQj7.+$U3mFj(9dE>N_og,rD/3q1cH_a94Rg,gna=n*r+!d-.EcQ-rr(Yj>?=lR2bQ_6q;I)N4H4X*MA:0T))GlljAK)^-q@LPEhu>aRDgWYP4F%qh'Y.njd'+E3n9HC`=4>%Mg#'qol?Qq0"Jp^9QH%U.JiS4:S08S\9-u`DR[=Vm^qRm2r&A)V_O+C9p*'Co(CUA2p"L)Y"Yq=Pm&pI<<sj]Z+;R%pgUeeSiqEo3n9?X`=4>%McLh7bC:+!3r]\K`D/S8hm-gOr*j8Mk+@/&WGEthaiMPbS%\IB9:j/Yd*SGe5f9pD`9,4gLomEn>?(qSjneh"\Nt+NY"=\C&u`<KAS][#1M>!t6Tt8+P<I9lIf.dJ<oqXggU:rt2VbldX5"g\4^B&mH5^jIFg^"@iPL<2kpYF=DqqkM4D*)L'`ps0X=h'"mC1tjhJ#Xi<8=^`[:k8OM@)AnU.'udTMnYVQRl8`^HQGa/7l_gDS#([56[Kc<k<8Gd+28u<@,\mFaBa`.Kkp?Ej\lmSA1:R`=4>%McSK@F/L!mo&Ro]Sbh7t.:n13WMr,\oMaAR5Q:GQGXZKm?d5]5J14EoaN\nshQ8YZY!`g]AjJ_6H-E5#dKbr@=C#s"%mKd(][N5\W468ICXEK]IJ0'KCA@;WR[s<50<'tl%csLQ9q+%`]dn9FjgR^>*%?C5WAsr)rg-u@WASn&R[T\0JXOQ;g+.Ro.4_kqBPq]GmkgmE.W/AA>-u/''.;j;!s]=cm*l9t8X5R+a_snB1o]fCM%_8ZDlm0K7Pgnm4[!(g-MH,%baO9M-Vql>#7VS^*]%Q7oRWeXO%s1WT]1]kX[O2r]ZNJL-'#)a48$F6;W;npnnqrIA$kjY8]pAAYADGao]agpDC4L6C[PH8\$sO8e'c[g@n,jN5*2"o:7Zn"4eEu_h/8]I`=4>%M`0j3jt1cA,Q9RP>U.!f;Gn]FI.4rWjVOIp^1iV\pWns0&O_ZDnr(9s>?(qSjkfKPeXMI9<jic\[.C.(E[[8;>Do'KLp(&gT:MN)f$(@,_rMW+IJ-fn@oc?mLrUZkbCR)L[]0m0b0$EGr-&fu8U@u(2M$`)<jic\eF@s6:/4OpFQt*"91t1`,Kf,kQcoCDn,Dn$0E/tmHk.3XY@Locee;7f#UF!Cf)#7#[jUG)G2!-LDHPRq[).1Y]dJT(3d#0JFQtOYr;#qienT2EZ0sCtIqO92rV+Rc&OGKF;l35CNu>?,Kg8O:3q[gJFXNa58>+ssQ*!IoFkh`5[bG]cJPQ0_J)cMIP0S!dNZGjS]QisU\XA^]$C,\C>pe,9>?(qSA`\<eVk8FlYXb8;8>+ssQ*!IoF^/bNEb0g@:Ar-rF68F%[;;2'6\fi3;4-L5Q/uZ?Oq$N-9@_SCjtWY)WXq_Db%]hsfAl)=7KO;`XDBKBe#,tl?\(*l1rR")PPEFmIfF3&MA7IJ<j'?bb/uJe!/fE6"OW`A:Ma#SOHfM.h_-o*1M2S;O&<UD8>+ssQ*!JZ=]m2oaj/1T\MJuB:/0_to#W7Nh)TH4JB=1LpGjt@j[a6*XW1(%rolZ<eX`fl"Hp'8je@YcP+1jn\'LjKS_6Q,ieE_`7GHDEVOS1$C=T>/GA81Kr:oeS9C[o8R$IQiftF4db^3(MZWMoH;H=h?ic9I\%aEZtPi@F_q4`#g%ll3nmF\[REUD8HApi\]K0iR<Q2-f<Voi5VAaY[*8,S']Z<2fG;Jp;e<*%hkK*Qh&TK*sJ;V\K3?aPkVnq[q>Tna\HGGeL$+$Y3ZIZS$25(-ZWq<D\<oB+;])uFt-6#18:Ee/):-X-:W[gI\^I.PTAbDl,bo6ihC7t3E0U:=WCZ=mHG>+?+?ccaKF[>81f3oUb/;p;GZqWcrcfl]$!jHBlEp"*Q?-1N(#B.8q,S^6nr5C^D^bPLjD,9_p`<rNl:fFKDa03>mW9^7!8ZHb6im/EgQ9RO#u2f79ECa)o&bU54G.h[[u+/uero4I#.rknR`"d8HJcTeUL<DZMbIsFd*:UAIGM]5\ObLFqe+ni0:S2bNXi5+#OH`aBND!KNLh*-mKfW\eVIep%/:(>/e^5nZ,LWO.>A\IZW/+-VYgU>B&aE"O-CEn]9LrV%MP-T*g<Dr"fX,fI@W:Qa`DB1og=?-[[B/Y']EPj9J'(IJ>rup<$HIS!oA"NV:r9LQ$B$[(9*;S]_?X?o>\nfp#UIUB&A*:;/2K::PB@!1"X&k?&44`(k";.?/ADr]6Ppup"ZM9]rFQl\9O9#Ff'G_Ie?b_'I^4"8Nc)4=-3d^S%3,fOX?fEk6Hut2$YIsEuS\1J=H#^_O`cBQ_@DW/NB;(]:RZn)M=4,;,l'Eu+As0%d8Mkf#Me5HXoU_;JX/j^td`aM93-!s7]mFmJm*3KY/)O8Wp3uJAlRm[RI%$;0Mgg&G;e%KCp?gV"kK3!#a4JTapfQU,l8@]IOH^7r3csbsfD<c=-R\)fkFV9k`b+ZjDHOHqC3"?8^OH+c%2pKaH.>nr'bqIKPa'\Ie9pf*(\-fjPC@nCU"YAQNXIa]fJ%XDBV!XBN>bes<>G,OXG5_?KqM<Za's,Qc5#YG1Bl0H_1Di/^\tV0F3Ao=E<.TTlg$&N.`<]aIX_:S_1PZJM1=UJjis5OX1Z*XY-'Bf&,?Y[j[^Xp>?b<8>$>$13,[N]bfn;FIJ]n;V"F-5?Q9tXRP_"R\9RDp[Gk\rlOf?CreJGrzzzzzzzzzzzzzzzzzzzzzO:_BlB9EMs~>endstream
|
63 |
+
endobj
|
64 |
+
% 'FormXob.2aa31d8122172b8a341073efe2e5f7ee': class PDFImageXObject
|
65 |
+
6 0 obj
|
66 |
+
<< /BitsPerComponent 8
|
67 |
+
/ColorSpace /DeviceRGB
|
68 |
+
/Filter [ /ASCII85Decode
|
69 |
+
/FlateDecode ]
|
70 |
+
/Height 50
|
71 |
+
/Length 1301
|
72 |
+
/SMask 7 0 R
|
73 |
+
/Subtype /Image
|
74 |
+
/Type /XObject
|
75 |
+
/Width 100 >>
|
76 |
+
stream
|
77 |
+
Gb"/f=X^CL'ZUqpGT[MPKT[-#Ni<HG!=pr_n3k8E(E"tT8]^\"Pc6'/8/)Yu3FsTOU(e2bP:$t"rHD:d\*s-OkNI*4qE:AB?Jf(9q!YoJ?:Rj0L1(pR@2O`-(kuH9L1(pR@2O`-(l%j[]Y(n)BRd)-s$Kpl=cJa0k2tpmC&-6>j^hFl<K4rFdZUh9<)c[MXH>'t8m(T;e'esG(?Y#OSX#I_EH.Zn)U2#Q:T^b$NJrgdS=I;So7MYtN;HU.6bkf?1,>LiEH/7ENt86X6UUK[F)r#F`l:IgXiM"7k2o4#_SSW<;c?dd[pEBI%Lrsn,9n]h/#B)=pp@Q@W#e)K-71/jM990g=.Z"TfH@jCXX@3Seh3s1$Oa0Y*ZeeQUl!fZm&?t`Z*CQEJP`;&`XN@d()@[C[/B@[DKT#.-RWeLDOHo\)]Kajp\30^?soY1Y&8E+<d)6i]Be\E^oe\"+-Yg[p(kBpAP<:5N/ZB?fBqtm9he@FkN?<=e^`3ja2d`?nac6k6\J?:>(McsOR2=MTo%KWls![upr.8E?E@3bG'%hBCMQiZ1c[QF>>e?sbfn:ICi!?^?2+*fT:_aXXK:45h((!+c-=Mnio1ZS>gN_i#mgnA"U-=Hp%9b;n]=k-d3L(e_h%l?YJ7H;5\ecX:c0s^0g.\ugU0B##mq#;Uq7sU?=&pT1c@8[n*c<uO,o0Ug>1R">+n3j<<aYsf@Pp1SJcp,J".^geCN4)gY5XE`seO*m-IOfZ-9JX0enRP97u["m84aVe'?66fLnh/j?`H.XVJ^2XHhL.f^n_+&N"/7ji4K=jl,/ACIS$oq&p/E3A`S"W2N77_I74oBqaDGkNBf>;5Ho5q]6au_2cWN[(*WUaHN;L2B9,*_83rJ3B>50[)+>JJr,>@:1H]b=7>(c`.X.J?8"2B[nhCg_F[rkidm3g_&4$&U`iJUm+^:LRt"OE>C1.:H:(tp?)->1&Fj1FVfH<Y,csTq_I@4nWI,E7Q+s`Lc-6\+$l!#]:H=B?ZSNX1ZI;NtH?qn8+<[>g\se!YlX7coeHt")C*dm)?XI/>LPLXr:#=#1A1?$FiZ]M^O,f77T/-bTd)4,Q%@SGW_i_`_['d<<2ADnj#7$Bc+;mgF9-ZM2'ta]hn*TL2'k\0(&?474f/l&UUSFU'!l%AY3>\6TRZ]nKPD_b0SUP)oC"Utd7CahP!r3Fp_(t,nG'8%`#7G6P?=)L+_h6U"R@0K4n8JO%f%*meT0=D5`/?la!GkIu6j1&-?!WR)Zhh]kX+>Zh!IF&bO+H^-__;M:0FYiQ5D7o.m]FM~>endstream
|
78 |
+
endobj
|
79 |
+
% 'FormXob.bdb4cf3eacfeffc3aed4f90bf87c5690': class PDFImageXObject
|
80 |
+
7 0 obj
|
81 |
+
<< /BitsPerComponent 8
|
82 |
+
/ColorSpace /DeviceGray
|
83 |
+
/Decode [ 0
|
84 |
+
1 ]
|
85 |
+
/Filter [ /ASCII85Decode
|
86 |
+
/FlateDecode ]
|
87 |
+
/Height 50
|
88 |
+
/Length 37
|
89 |
+
/Subtype /Image
|
90 |
+
/Type /XObject
|
91 |
+
/Width 100 >>
|
92 |
+
stream
|
93 |
+
Gb"0;0`_7S!5bE.WFlQ&TE"rl!._NZ<3gY4~>endstream
|
94 |
+
endobj
|
95 |
+
% 'Page1': class PDFPage
|
96 |
+
8 0 obj
|
97 |
+
% Page dictionary
|
98 |
+
<< /Contents 19 0 R
|
99 |
+
/MediaBox [ 0
|
100 |
+
0
|
101 |
+
595.2756
|
102 |
+
841.8898 ]
|
103 |
+
/Parent 18 0 R
|
104 |
+
/Resources << /Font 1 0 R
|
105 |
+
/ProcSet [ /PDF
|
106 |
+
/Text
|
107 |
+
/ImageB
|
108 |
+
/ImageC
|
109 |
+
/ImageI ]
|
110 |
+
/XObject << /FormXob.0ee3c21c0e0af2f576dd3afb463ffa7a 3 0 R
|
111 |
+
/FormXob.2aa31d8122172b8a341073efe2e5f7ee 6 0 R
|
112 |
+
/FormXob.81c267fdcecc4f3794af4997f71c7851 5 0 R >> >>
|
113 |
+
/Rotate 0
|
114 |
+
/Trans << >>
|
115 |
+
/Type /Page >>
|
116 |
+
endobj
|
117 |
+
% 'F2': class PDFType1Font
|
118 |
+
9 0 obj
|
119 |
+
% Font Helvetica-Bold
|
120 |
+
<< /BaseFont /Helvetica-Bold
|
121 |
+
/Encoding /WinAnsiEncoding
|
122 |
+
/Name /F2
|
123 |
+
/Subtype /Type1
|
124 |
+
/Type /Font >>
|
125 |
+
endobj
|
126 |
+
% 'Annot.NUMBER1': class LinkAnnotation
|
127 |
+
10 0 obj
|
128 |
+
<< /Border [ 0
|
129 |
+
0
|
130 |
+
0 ]
|
131 |
+
/Contents ()
|
132 |
+
/Dest [ 13 0 R
|
133 |
+
/XYZ
|
134 |
+
62.69291
|
135 |
+
736.3465
|
136 |
+
0 ]
|
137 |
+
/Rect [ 62.69291
|
138 |
+
695.0965
|
139 |
+
129.3829
|
140 |
+
707.0965 ]
|
141 |
+
/Subtype /Link
|
142 |
+
/Type /Annot >>
|
143 |
+
endobj
|
144 |
+
% 'Annot.NUMBER2': class LinkAnnotation
|
145 |
+
11 0 obj
|
146 |
+
<< /Border [ 0
|
147 |
+
0
|
148 |
+
0 ]
|
149 |
+
/Contents ()
|
150 |
+
/Dest [ 13 0 R
|
151 |
+
/XYZ
|
152 |
+
62.69291
|
153 |
+
736.3465
|
154 |
+
0 ]
|
155 |
+
/Rect [ 527.0227
|
156 |
+
695.0965
|
157 |
+
532.5827
|
158 |
+
707.0965 ]
|
159 |
+
/Subtype /Link
|
160 |
+
/Type /Annot >>
|
161 |
+
endobj
|
162 |
+
% 'Page2': class PDFPage
|
163 |
+
12 0 obj
|
164 |
+
% Page dictionary
|
165 |
+
<< /Annots [ 10 0 R
|
166 |
+
11 0 R ]
|
167 |
+
/Contents 20 0 R
|
168 |
+
/MediaBox [ 0
|
169 |
+
0
|
170 |
+
595.2756
|
171 |
+
841.8898 ]
|
172 |
+
/Parent 18 0 R
|
173 |
+
/Resources << /Font 1 0 R
|
174 |
+
/ProcSet [ /PDF
|
175 |
+
/Text
|
176 |
+
/ImageB
|
177 |
+
/ImageC
|
178 |
+
/ImageI ]
|
179 |
+
/XObject << /FormXob.2aa31d8122172b8a341073efe2e5f7ee 6 0 R
|
180 |
+
/FormXob.81c267fdcecc4f3794af4997f71c7851 5 0 R >> >>
|
181 |
+
/Rotate 0
|
182 |
+
/Trans << >>
|
183 |
+
/Type /Page >>
|
184 |
+
endobj
|
185 |
+
% 'Page3': class PDFPage
|
186 |
+
13 0 obj
|
187 |
+
% Page dictionary
|
188 |
+
<< /Contents 21 0 R
|
189 |
+
/MediaBox [ 0
|
190 |
+
0
|
191 |
+
595.2756
|
192 |
+
841.8898 ]
|
193 |
+
/Parent 18 0 R
|
194 |
+
/Resources << /Font 1 0 R
|
195 |
+
/ProcSet [ /PDF
|
196 |
+
/Text
|
197 |
+
/ImageB
|
198 |
+
/ImageC
|
199 |
+
/ImageI ]
|
200 |
+
/XObject << /FormXob.2aa31d8122172b8a341073efe2e5f7ee 6 0 R
|
201 |
+
/FormXob.81c267fdcecc4f3794af4997f71c7851 5 0 R >> >>
|
202 |
+
/Rotate 0
|
203 |
+
/Trans << >>
|
204 |
+
/Type /Page >>
|
205 |
+
endobj
|
206 |
+
% 'R14': class PDFCatalog
|
207 |
+
14 0 obj
|
208 |
+
% Document Root
|
209 |
+
<< /Outlines 16 0 R
|
210 |
+
/PageLabels 22 0 R
|
211 |
+
/PageMode /UseNone
|
212 |
+
/Pages 18 0 R
|
213 |
+
/Type /Catalog >>
|
214 |
+
endobj
|
215 |
+
% 'R15': class PDFInfo
|
216 |
+
15 0 obj
|
217 |
+
<< /Author ()
|
218 |
+
/CreationDate (D:20150105230539-01'00')
|
219 |
+
/Creator (\(unspecified\))
|
220 |
+
/Keywords ()
|
221 |
+
/Producer (ReportLab PDF Library - www.reportlab.com)
|
222 |
+
/Subject (\(unspecified\))
|
223 |
+
/Title () >>
|
224 |
+
endobj
|
225 |
+
% 'R16': class PDFOutlines
|
226 |
+
16 0 obj
|
227 |
+
<< /Count 1
|
228 |
+
/First 17 0 R
|
229 |
+
/Last 17 0 R
|
230 |
+
/Type /Outlines >>
|
231 |
+
endobj
|
232 |
+
% 'Outline.0': class OutlineEntryObject
|
233 |
+
17 0 obj
|
234 |
+
<< /Dest [ 13 0 R
|
235 |
+
/XYZ
|
236 |
+
62.69291
|
237 |
+
736.3465
|
238 |
+
0 ]
|
239 |
+
/Parent 16 0 R
|
240 |
+
/Title (\376\377\0001\000\240\000\240\000\240\000I\000n\000s\000t\000a\000l\000l\000a\000t\000i\000o\000n) >>
|
241 |
+
endobj
|
242 |
+
% 'R18': class PDFPages
|
243 |
+
18 0 obj
|
244 |
+
% page tree
|
245 |
+
<< /Count 3
|
246 |
+
/Kids [ 8 0 R
|
247 |
+
12 0 R
|
248 |
+
13 0 R ]
|
249 |
+
/Type /Pages >>
|
250 |
+
endobj
|
251 |
+
% 'R19': class PDFStream
|
252 |
+
19 0 obj
|
253 |
+
% page stream
|
254 |
+
<< /Length 1438 >>
|
255 |
+
stream
|
256 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
257 |
+
q
|
258 |
+
1 0 0 1 62.69291 503.5748 cm
|
259 |
+
0 0 0 rg
|
260 |
+
BT /F1 10 Tf 12 TL ET
|
261 |
+
q
|
262 |
+
1 0 0 1 6 3 cm
|
263 |
+
q
|
264 |
+
453.5433 0 0 226.7717 0 0 cm
|
265 |
+
/FormXob.0ee3c21c0e0af2f576dd3afb463ffa7a Do
|
266 |
+
Q
|
267 |
+
Q
|
268 |
+
q
|
269 |
+
Q
|
270 |
+
Q
|
271 |
+
q
|
272 |
+
1 0 0 1 62.69291 503.5748 cm
|
273 |
+
Q
|
274 |
+
q
|
275 |
+
1 0 0 1 56.69291 756.5197 cm
|
276 |
+
1 1 1 rg
|
277 |
+
n 0 57.02362 481.8898 -57.02362 re f*
|
278 |
+
0 0 0 rg
|
279 |
+
BT /F1 10 Tf 12 TL ET
|
280 |
+
q
|
281 |
+
1 0 0 1 327.2598 3 cm
|
282 |
+
q
|
283 |
+
102.0472 0 0 51.02362 0 0 cm
|
284 |
+
/FormXob.81c267fdcecc4f3794af4997f71c7851 Do
|
285 |
+
Q
|
286 |
+
Q
|
287 |
+
q
|
288 |
+
1 J
|
289 |
+
1 j
|
290 |
+
0 0 0 RG
|
291 |
+
.25 w
|
292 |
+
n 321.2598 0 m 321.2598 57.02362 l S
|
293 |
+
n 0 57.02362 m 481.8898 57.02362 l S
|
294 |
+
n 0 0 m 481.8898 0 l S
|
295 |
+
n 0 0 m 0 57.02362 l S
|
296 |
+
n 481.8898 0 m 481.8898 57.02362 l S
|
297 |
+
Q
|
298 |
+
Q
|
299 |
+
q
|
300 |
+
1 0 0 1 56.69291 56.69291 cm
|
301 |
+
0 0 0 rg
|
302 |
+
BT /F1 10 Tf 12 TL ET
|
303 |
+
q
|
304 |
+
1 0 0 1 6 89 cm
|
305 |
+
q
|
306 |
+
0 0 0 rg
|
307 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 1 / 3 - 05/01/2015) Tj T* ET
|
308 |
+
Q
|
309 |
+
Q
|
310 |
+
q
|
311 |
+
1 0 0 1 6 77 cm
|
312 |
+
q
|
313 |
+
0 0 0 rg
|
314 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright Expercash \251 2015.) Tj T* ET
|
315 |
+
Q
|
316 |
+
Q
|
317 |
+
q
|
318 |
+
1 0 0 1 6 65 cm
|
319 |
+
q
|
320 |
+
0 0 0 rg
|
321 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
322 |
+
Q
|
323 |
+
Q
|
324 |
+
q
|
325 |
+
1 0 0 1 6 53 cm
|
326 |
+
q
|
327 |
+
0 0 0 rg
|
328 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
329 |
+
Q
|
330 |
+
Q
|
331 |
+
q
|
332 |
+
1 0 0 1 6 3 cm
|
333 |
+
q
|
334 |
+
100 0 0 50 0 0 cm
|
335 |
+
/FormXob.2aa31d8122172b8a341073efe2e5f7ee Do
|
336 |
+
Q
|
337 |
+
Q
|
338 |
+
q
|
339 |
+
1 0 0 1 327.2598 49.97638 cm
|
340 |
+
q
|
341 |
+
102.0472 0 0 51.02362 0 0 cm
|
342 |
+
/FormXob.81c267fdcecc4f3794af4997f71c7851 Do
|
343 |
+
Q
|
344 |
+
Q
|
345 |
+
q
|
346 |
+
Q
|
347 |
+
Q
|
348 |
+
|
349 |
+
endstream
|
350 |
+
endobj
|
351 |
+
% 'R20': class PDFStream
|
352 |
+
20 0 obj
|
353 |
+
% page stream
|
354 |
+
<< /Length 1700 >>
|
355 |
+
stream
|
356 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
357 |
+
q
|
358 |
+
1 0 0 1 62.69291 715.3465 cm
|
359 |
+
q
|
360 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (Contents) Tj T* ET
|
361 |
+
Q
|
362 |
+
Q
|
363 |
+
q
|
364 |
+
1 0 0 1 62.69291 691.3465 cm
|
365 |
+
0 0 0 rg
|
366 |
+
BT /F1 10 Tf 12 TL ET
|
367 |
+
q
|
368 |
+
1 0 0 1 0 3 cm
|
369 |
+
q
|
370 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F2 10 Tf 0 0 .501961 rg (1 Installation) Tj T* ET
|
371 |
+
Q
|
372 |
+
Q
|
373 |
+
q
|
374 |
+
1 0 0 1 397.8898 3 cm
|
375 |
+
q
|
376 |
+
0 0 .501961 rg
|
377 |
+
0 0 .501961 RG
|
378 |
+
BT 1 0 0 1 0 2 Tm /F2 10 Tf 12 TL 66.44 0 Td (3) Tj T* -66.44 0 Td ET
|
379 |
+
Q
|
380 |
+
Q
|
381 |
+
q
|
382 |
+
Q
|
383 |
+
Q
|
384 |
+
q
|
385 |
+
1 0 0 1 62.69291 691.3465 cm
|
386 |
+
Q
|
387 |
+
q
|
388 |
+
1 0 0 1 56.69291 756.5197 cm
|
389 |
+
1 1 1 rg
|
390 |
+
n 0 57.02362 481.8898 -57.02362 re f*
|
391 |
+
0 0 0 rg
|
392 |
+
BT /F1 10 Tf 12 TL ET
|
393 |
+
q
|
394 |
+
1 0 0 1 327.2598 3 cm
|
395 |
+
q
|
396 |
+
102.0472 0 0 51.02362 0 0 cm
|
397 |
+
/FormXob.81c267fdcecc4f3794af4997f71c7851 Do
|
398 |
+
Q
|
399 |
+
Q
|
400 |
+
q
|
401 |
+
1 J
|
402 |
+
1 j
|
403 |
+
0 0 0 RG
|
404 |
+
.25 w
|
405 |
+
n 321.2598 0 m 321.2598 57.02362 l S
|
406 |
+
n 0 57.02362 m 481.8898 57.02362 l S
|
407 |
+
n 0 0 m 481.8898 0 l S
|
408 |
+
n 0 0 m 0 57.02362 l S
|
409 |
+
n 481.8898 0 m 481.8898 57.02362 l S
|
410 |
+
Q
|
411 |
+
Q
|
412 |
+
q
|
413 |
+
1 0 0 1 56.69291 56.69291 cm
|
414 |
+
0 0 0 rg
|
415 |
+
BT /F1 10 Tf 12 TL ET
|
416 |
+
q
|
417 |
+
1 0 0 1 6 89 cm
|
418 |
+
q
|
419 |
+
0 0 0 rg
|
420 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 2 / 3 - 05/01/2015) Tj T* ET
|
421 |
+
Q
|
422 |
+
Q
|
423 |
+
q
|
424 |
+
1 0 0 1 6 77 cm
|
425 |
+
q
|
426 |
+
0 0 0 rg
|
427 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright Expercash \251 2015.) Tj T* ET
|
428 |
+
Q
|
429 |
+
Q
|
430 |
+
q
|
431 |
+
1 0 0 1 6 65 cm
|
432 |
+
q
|
433 |
+
0 0 0 rg
|
434 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
435 |
+
Q
|
436 |
+
Q
|
437 |
+
q
|
438 |
+
1 0 0 1 6 53 cm
|
439 |
+
q
|
440 |
+
0 0 0 rg
|
441 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
442 |
+
Q
|
443 |
+
Q
|
444 |
+
q
|
445 |
+
1 0 0 1 6 3 cm
|
446 |
+
q
|
447 |
+
100 0 0 50 0 0 cm
|
448 |
+
/FormXob.2aa31d8122172b8a341073efe2e5f7ee Do
|
449 |
+
Q
|
450 |
+
Q
|
451 |
+
q
|
452 |
+
1 0 0 1 327.2598 49.97638 cm
|
453 |
+
q
|
454 |
+
102.0472 0 0 51.02362 0 0 cm
|
455 |
+
/FormXob.81c267fdcecc4f3794af4997f71c7851 Do
|
456 |
+
Q
|
457 |
+
Q
|
458 |
+
q
|
459 |
+
Q
|
460 |
+
Q
|
461 |
+
|
462 |
+
endstream
|
463 |
+
endobj
|
464 |
+
% 'R21': class PDFStream
|
465 |
+
21 0 obj
|
466 |
+
% page stream
|
467 |
+
<< /Length 1389 >>
|
468 |
+
stream
|
469 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
470 |
+
q
|
471 |
+
1 0 0 1 62.69291 715.3465 cm
|
472 |
+
q
|
473 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (1 Installation) Tj T* ET
|
474 |
+
Q
|
475 |
+
Q
|
476 |
+
q
|
477 |
+
1 0 0 1 62.69291 709.3465 cm
|
478 |
+
Q
|
479 |
+
q
|
480 |
+
1 0 0 1 56.69291 756.5197 cm
|
481 |
+
1 1 1 rg
|
482 |
+
n 0 57.02362 481.8898 -57.02362 re f*
|
483 |
+
0 0 0 rg
|
484 |
+
BT /F1 10 Tf 12 TL ET
|
485 |
+
q
|
486 |
+
1 0 0 1 327.2598 3 cm
|
487 |
+
q
|
488 |
+
102.0472 0 0 51.02362 0 0 cm
|
489 |
+
/FormXob.81c267fdcecc4f3794af4997f71c7851 Do
|
490 |
+
Q
|
491 |
+
Q
|
492 |
+
q
|
493 |
+
1 J
|
494 |
+
1 j
|
495 |
+
0 0 0 RG
|
496 |
+
.25 w
|
497 |
+
n 321.2598 0 m 321.2598 57.02362 l S
|
498 |
+
n 0 57.02362 m 481.8898 57.02362 l S
|
499 |
+
n 0 0 m 481.8898 0 l S
|
500 |
+
n 0 0 m 0 57.02362 l S
|
501 |
+
n 481.8898 0 m 481.8898 57.02362 l S
|
502 |
+
Q
|
503 |
+
Q
|
504 |
+
q
|
505 |
+
1 0 0 1 56.69291 56.69291 cm
|
506 |
+
0 0 0 rg
|
507 |
+
BT /F1 10 Tf 12 TL ET
|
508 |
+
q
|
509 |
+
1 0 0 1 6 89 cm
|
510 |
+
q
|
511 |
+
0 0 0 rg
|
512 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 3 / 3 - 05/01/2015) Tj T* ET
|
513 |
+
Q
|
514 |
+
Q
|
515 |
+
q
|
516 |
+
1 0 0 1 6 77 cm
|
517 |
+
q
|
518 |
+
0 0 0 rg
|
519 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright Expercash \251 2015.) Tj T* ET
|
520 |
+
Q
|
521 |
+
Q
|
522 |
+
q
|
523 |
+
1 0 0 1 6 65 cm
|
524 |
+
q
|
525 |
+
0 0 0 rg
|
526 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
527 |
+
Q
|
528 |
+
Q
|
529 |
+
q
|
530 |
+
1 0 0 1 6 53 cm
|
531 |
+
q
|
532 |
+
0 0 0 rg
|
533 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
534 |
+
Q
|
535 |
+
Q
|
536 |
+
q
|
537 |
+
1 0 0 1 6 3 cm
|
538 |
+
q
|
539 |
+
100 0 0 50 0 0 cm
|
540 |
+
/FormXob.2aa31d8122172b8a341073efe2e5f7ee Do
|
541 |
+
Q
|
542 |
+
Q
|
543 |
+
q
|
544 |
+
1 0 0 1 327.2598 49.97638 cm
|
545 |
+
q
|
546 |
+
102.0472 0 0 51.02362 0 0 cm
|
547 |
+
/FormXob.81c267fdcecc4f3794af4997f71c7851 Do
|
548 |
+
Q
|
549 |
+
Q
|
550 |
+
q
|
551 |
+
Q
|
552 |
+
Q
|
553 |
+
|
554 |
+
endstream
|
555 |
+
endobj
|
556 |
+
% 'R22': class PDFPageLabels
|
557 |
+
22 0 obj
|
558 |
+
% Document Root
|
559 |
+
<< /Nums [ 0
|
560 |
+
23 0 R
|
561 |
+
1
|
562 |
+
24 0 R
|
563 |
+
2
|
564 |
+
25 0 R ] >>
|
565 |
+
endobj
|
566 |
+
% 'R23': class PDFPageLabel
|
567 |
+
23 0 obj
|
568 |
+
% None
|
569 |
+
<< /S /D
|
570 |
+
/St 1 >>
|
571 |
+
endobj
|
572 |
+
% 'R24': class PDFPageLabel
|
573 |
+
24 0 obj
|
574 |
+
% None
|
575 |
+
<< /S /D
|
576 |
+
/St 2 >>
|
577 |
+
endobj
|
578 |
+
% 'R25': class PDFPageLabel
|
579 |
+
25 0 obj
|
580 |
+
% None
|
581 |
+
<< /S /D
|
582 |
+
/St 3 >>
|
583 |
+
endobj
|
584 |
+
xref
|
585 |
+
0 26
|
586 |
+
0000000000 65535 f
|
587 |
+
0000000113 00000 n
|
588 |
+
0000000221 00000 n
|
589 |
+
0000000427 00000 n
|
590 |
+
0000004071 00000 n
|
591 |
+
0000004424 00000 n
|
592 |
+
0000008909 00000 n
|
593 |
+
0000010503 00000 n
|
594 |
+
0000010794 00000 n
|
595 |
+
0000011240 00000 n
|
596 |
+
0000011428 00000 n
|
597 |
+
0000011670 00000 n
|
598 |
+
0000011897 00000 n
|
599 |
+
0000012322 00000 n
|
600 |
+
0000012718 00000 n
|
601 |
+
0000012877 00000 n
|
602 |
+
0000013125 00000 n
|
603 |
+
0000013250 00000 n
|
604 |
+
0000013477 00000 n
|
605 |
+
0000013602 00000 n
|
606 |
+
0000015139 00000 n
|
607 |
+
0000016938 00000 n
|
608 |
+
0000018430 00000 n
|
609 |
+
0000018549 00000 n
|
610 |
+
0000018626 00000 n
|
611 |
+
0000018703 00000 n
|
612 |
+
trailer
|
613 |
+
<< /ID
|
614 |
+
% ReportLab generated PDF document -- digest (http://www.reportlab.com)
|
615 |
+
[(\007mK\274\277\355:\346E\243\362\336Z\322\345\232) (\007mK\274\277\355:\346E\243\362\336Z\322\345\232)]
|
616 |
+
|
617 |
+
/Info 15 0 R
|
618 |
+
/Root 14 0 R
|
619 |
+
/Size 26 >>
|
620 |
+
startxref
|
621 |
+
18750
|
622 |
+
%%EOF
|
doc/Expercash_Scoring/Endkundendokumentation.pdf
ADDED
@@ -0,0 +1,3538 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
%PDF-1.4
|
2 |
+
%���� ReportLab Generated PDF document http://www.reportlab.com
|
3 |
+
% 'BasicFonts': class PDFDictionary
|
4 |
+
1 0 obj
|
5 |
+
% The standard fonts dictionary
|
6 |
+
<< /F1 2 0 R
|
7 |
+
/F2 4 0 R >>
|
8 |
+
endobj
|
9 |
+
% 'F1': class PDFType1Font
|
10 |
+
2 0 obj
|
11 |
+
% Font Helvetica
|
12 |
+
<< /BaseFont /Helvetica
|
13 |
+
/Encoding /WinAnsiEncoding
|
14 |
+
/Name /F1
|
15 |
+
/Subtype /Type1
|
16 |
+
/Type /Font >>
|
17 |
+
endobj
|
18 |
+
% 'FormXob.36022f2f4a38d530d012f5d48cb2ee15': class PDFImageXObject
|
19 |
+
3 0 obj
|
20 |
+
<< /BitsPerComponent 8
|
21 |
+
/ColorSpace /DeviceCMYK
|
22 |
+
/Decode [ 1
|
23 |
+
0
|
24 |
+
1
|
25 |
+
0
|
26 |
+
1
|
27 |
+
0
|
28 |
+
1
|
29 |
+
0 ]
|
30 |
+
/Filter [ /ASCII85Decode
|
31 |
+
/DCTDecode ]
|
32 |
+
/Height 189
|
33 |
+
/Length 160993
|
34 |
+
/Subtype /Image
|
35 |
+
/Type /XObject
|
36 |
+
/Width 855 >>
|
37 |
+
stream
|
38 |
+
s4IA=!%^r[Dffo=BQ%i41G1?]3'p22"76'g!!!!1!A"3N!!*'#!A"3N!!*'#s5?*qBQS?83\N.(F"Um3Ddm91@rH3;G[YPE0eP.5!'EJjE+*6lATT&(AS5^p4X0@,^EOe7A3D,<2,,c!E'n2MBh3PjAQ*nM<+C5i@l\'D5<]E:GWL(dE,B0.@3Bf3Ci4;TGWd6ZA8bpg3c9""D.Rft0-VN`3d>L\FDF#`6"FnCAKY)L:`r,DEb-@M/hnqf0JbU01c?sA2`EEN1+XP;EbQXcARZc;1E\G,0K1+/1cd?L3\`T:+<VdL+<VdN4piDT+?X[TAi`gX7NcqmCi4;TEb&cF,%u(?E&oX*GB\6`G;CjiEb@$[3B9)Q0JY::1+dNWAhA(LDKK<3/T,VS,!H>V+<VdL+?X[TAi`=kF(96)E-,f4DBNt1Aia@0Dfp.b+sI@:+<VdL+<VdL+<VeOD/=*23b2_`,%u(?E&oX*E-62;/oPcC04\QGASbppASuU20/5(60-WRe+<VdL+<VdL+?X1E3bE;ND..NMBl.9kAM7e;AS4+YA7IZ4DfT]'F?U$S+<VdL+<VdL4Chq_FD5i5ANgGD+<VdL+<VdL+<VdhEb&cC6#:X,$6UH6+<VdL+<VdL+<VdL4E=tE3c&LQG\q7XCgh3o4X,,&A7]@]F_l.D5"'F6@r"1[Eb&cCChZ'?+<VdL+<VdL+<VdL4>1_cAi`4oF?U$S+<VdL+<VdL4>15T3co(XCh5d;+<VdL+<Wd"Eb&cC6tLFLEbTK7Bl@lQ$6UH6+<VdhEb&cC6tLFLEbTK7Bl@l3Eb&cC@:F.tF?Lfl$6UH6+<VdL+<VdL+F%a>DK@j`@;n@RBQS?83\N.(F"Um3Ddm91@rH3;G[YPE0eP.5+poG8+<VdL+<VdL+<YoGCi4;TG[YP]8Sr*',%u(?E&oX*DK@F=A8bpg/n8g:06goE0/5(504uqPD.bLG4piDT+<VdL+<VdhG[YPP6ZQaHFDl2!Df9GU8Si3cF*)G2FDl1^06goE3^[q!@<?F.<,Z\k4piDT+<VdL+<VdhG[YPP6ZQaHFCdjKFCdWk0JGL=0JY470iTk]3\`BN0JP(30fh!B4>1qfE&p@,ART[l6t(1K4piDT+<VdL+<VdhG[YPP9lFQVApHdQFCdWk0JGL=0JY470iThe3\`BN0Jclp06goE3_aO'BkDWY@<?'E$6UH6+<VdL+<Wdk@;n8%ATV?k@<>pG@<?'E1,(CB/MJq30elW^0KLpD3\W9=0JPUB0K_"5@;n8%ATV?k@<>pG@<?'E$6UH6+<VdL+<Wdk@;n8,BQ\0$DII6qF$9pR+<VdL+<VdL+<VdhEb&cC6#:X,$6UH6+<VdL+<VdL+<VdL4E=tE3c&LQEb&cCE+*d.AQ3qoAN_58ATMd4EarZ)4piDT+<VdL+<VdL+<VdL+<VdL4Et:R7nIQ13d5:KFD*in2)[QMG[YP]8Sr*$GA1T0BKcbG+<VdL+<VdL+<VdL+<VdL+?XmWE(<K:B0'^;BkM+$4uG5\06goE7nIQ13bW)=B4uBN$6UH6+<VdL+<VdL+<VdL+<VdhG[YP]8Sr*$AoD^,@<=\*:dml:06goE7nIQ13bE;ND..NM$6UH6+<VdL+<VdL+<VdL+<VdhG[YP]8Sr*$Bl.9kANhb-C+hD05uCQr>"V\*5sdkM77'[67<:a\6n^Jr6$$$rBQdoV3I5+(3Hn%_9m'/r5r;GSCed8H0L7uj5s[e'5se725s[e&76r7FGX4DW;+5Ol5s[e&;*dN%.l9O[CIW)K1.l@K7oVc?5s[e&AhRUZ8Pqc?B2M)a5ug??B2qDfB5:"(;-?LYG@sE4B4jn+6#TC`GAg,$,BuL96pa166pZ#k6pZ#o6pWY+76rn/6paUI7RBsO7<j#c7sK)b89d++89d++89d++89[Kn6?cp76pWM077':C7qbn#7T+/:89d++-6mb$4%OTUAk7/+Ak7/+Ak7/+Ak7/+Ak7/+Ak7/+Ak7/+Ak7/+Ak7/+Ak7/+Ak7/+Ak7/+Ak7/+Ak7/+AhQ,05t+X`5u0d85s]]`;C3W55s%@u8Q%iO9i=8h01A088O5X.5tF:=77':;76s4*5s[e&5s[e&;+<iq8Ol'D5tF@/CJ.$=76s4P8OPjA77':;76s4*5s[e&5sZhBGX4DW;*dQ8G>UgrB4FM#;/],s5s[k(;,'GEB2M#_B4F=r5tOR4DG<G`B2)8j5s[t3;Fu+1<^fMI1.>ne=[c=bE(=S.GZT,eBi%,C,BuL9<HLcF9mBiU3($ShB6H^[;0l,>CN3!m=YilA:/t//CGnt7:2"0<>"DU\0QfrY8oIEr6YL+9BM)/l;K5Vh<ch);91!ZE1bVZo-6mb$4#'N10NqR[7VlL70mI52CcPR#12(W8D00i.=#G/(1K#r<DIbS8=E$32822W,1J^GQ=^aj88Sq+71jMi2D_"1j2,dOlE+N0h=sbJ=5s''qDFuZqDDb(%E(a8LE&MELEH-,BEa^kLDc/ke8OGd@8OPmB<CK5O=[b\D9giGf76s4Q779I078lo\77L9T:2!43>'O[`7<p4)GX4E0@Rt]49h8/=;bf\L<_@(9G"$^L6rHEcBOOh>Gun]_2bZS*1Jh"FAP,C(G[sfiG@sN8BP1L@C0F(sBk2!i7TD6(EDLn)H"V(C,BuL90IotGBM)3=FA5_72,I1eA6Du7E+2p=0kFHA;J]NRA8bmXE,oDX0m-q\;DD^"A2Ik"E&VB"0e6il:ISr"@7Y*(D+eS"Gtr*m-6mb$4"E^88lo)12/-62E-5Z.=uKu.EDL@h@:=%n95SZg2L0CbE@Z2c@6m2'6pX[96UajH;F*]16#/5u.p=r70ki:VF]p_<;,V4E=XGA<5s&48GXGAL=B\QgF>,X63(lbP.oCI]@T.JK@<?Nh:GciX:GR!.=ZBtb2Gct@3G!IhAnc'q=>_jGDKnop<dIFs=ZCCsD_XmY1eoABGX4Dg0h5kZ;+GLa0h"K2<(TnABkDEH:ip;Q13I:b84?<MAk[,6=CHAS@mW"T3&>D)G=,;2DL-VP6n;D@BNe7hA9r5rG&]Nd757F^,BuL90l:];=[kn;CNWHf8oHClC2I$36;]UW2D[[7:JG\GEbdLKCO1:d;+!9a3Ft'oC3E*?Ao2U89Ij1#D,P1B<bQG32*sfX89[U!-6mb$4).]+1NR/>0K*Yr2f(Ee.ofDk0fWoV2)R?JAMl/eGqi#p@r-6rD)Ga#=a<_\<DRU784[n`5tGlj@;\n47R]a[1K-2D7SHHR9I;!/5s'$E==[KE2+<G"[!r:fMOJG%>&qFZ3`T3FX^:A5H;a:,[/^CJf%r1,;O920)GkE\prk7nH0O2b68R2,S3_7oj\+0/\#X3,g2hGX4DnD/(S)=\qh7CH-$07rq(3@mX7"9Lr]=9Qi*F89%3s;)rhU>#8C>=]9'ZDJ`3m@qKgM6>B2.84du)02-OHF>@lKCO.X"8U,A),BuL91.?:FE&i&M@5_h&2gJLZA4\IUF`'2tH:]u50LT)W>#%Y$82NYY:btmN6rduGF\OkmG%F`e3&EX,=*.J&0kFlhEdD273&#D6-6mb$4*#:]E,J?l<-W8'E+rBEF=T:jH;77L1c9/2Dd$%RB1YuZ04QhMBP:%KC/&S^3AsSb20j$n1KSU/H:i-nD-&_N@o5-r8m,k:=!f/:5s$c8CKa;ICJ?Ks3,M\p6$R<d7k7Ir9R(eV;c?FM>%DPtCI:BU0N^5"07%A(@:=C<;_U"/=\`RFBQcC6F)O`,7:AJP8m#tF=&gRlGX4D_;b0;V85!ho2IU-;7oXS)G\pSC:NoQ-6ut=dB1-;g6U<@u=?(SL:2XlMH89YZDL+i`H!"Tl8n;g==ArCL94DHh6n<%f;0@+1,BuL9E].*4B1Y!]:/X#s0kG38CNq@%7:Iu\85s#3@nJ^LC1^@<06]g%9LEB&9N<`>B5)-b6!6luG"-1=01\Vj>$*OY:2jf3DDH!+-6mb$4&8@i:22S#H8oS7:0;@NH$WUO04J?K6t1@BH$+C0H"D&!=D18[AMmS!EG\f]FCmp39mBBD<*3ig@rQZ]F\HX4GqVcC3-J%t3$okp5s&g>9P#tLD_j:R3-6lb.s5WCAl!,]2IUQL.o9htF^];l@:rbI6"a1V6r[;gC2-XAG&:]61N4jbAo13l=YY#:D0%U[@rs_ACiq'LGX4De<\[6n<-)btGZ.Np<`iKj@T#0`1g5'4CM7C+@oZB$DH0P#Gr8Af;G^D2DDc&[CKb^2G=,I_C/-X*3-AXg:e>bEH"L-#8PXFU,BuL9:e,PK79<AXC19#>9m:SPEF`R(A5I;b2/m%oD`BOEH=9Z-BR!BHASj)967Z5^D_#=>6Zk=a=%Gc&E]-iM@<ksM6#^[SCd_c(-6mb$4'GNZ@r+e,:/PRn@l7mZDdcdO2*lIE7X7!bEC=SWG'ZMO026J5G[rR?GUmHL9PdEtEH+Kl9P@1=84ci_7SmQ'@r#7\:K_L0CaLBO5s$`9=E87s=(sHF2.]HiH?qt67VZF-3,L0&9Pn])DDsOT:f:muASX2;E*$au=(Q;P8p,/j='9W:='Bf;E`,q<FEUVt6>'5582V_=GX4E02K^`f2.9o\:2+c(3D"9jCLT_(:hjJnBN-m"<`r<N=)E"\7Vjr#C34K41HA)YC,nq%CG7V?6:sa'05<13H?X:=H<E[[92Kp],BuL976!"[Eb%'`11t$+8MF.5@SB6_8U>Vi=&q4g75&q#FA$1@7TNPdH"Sj590u6-A5uN$3(%jT8U5;G3H.i?@Q%dn:2r9^F)k\H-6mb$4*5"$Bll:N>&ZE;9/Aq]<)$;9>'Fk/7rU7B1e)%TAo)9[:G6TQ0ig/%>%L-FGY1O\Fa@^u3FactCLKhT6:,Tg@T6?(00r!P:F7<25s%D,H$VGh2)T820Mb5T>%fotCGJLS82=s?@nKU6Ao(pS=*@D8<bcSq2+930>%L\f9keECG\L0'9lNL38Q0J!G$.X<=*A[CA2kn\GX4E.2L'7:A3rsm1371c3Di.?<_5,m<_-nM8U3*YC,@e^:h<]u=(XihDKS?(CbSP.1Gs#/0fF#+G&UK$:iTMr9eT:G0g\Gu@lJQX,BuL99M%$aEC3]JH:UhMH!3dBGZmj/2)[s#=&CncCcPTN5tXscCH5NJ;IW+9FZ3JtG'ZVgE-QM7Ch@`d8hi=r7s-gb04A<ME_g7$-6mb$4)K%7<A76gA2A1892/PBE)9J-GA^&VDC]0m00r3(<-h4k13tf2.nN9+C/\_#F(Su;2JOa$Cc?&Y>%W%P3%HmR2,#uT==\;u1+"5j5s$c?1-'S_D)5p$94`#t9mLY-1iZ918RjQ!FYGdrF&>Lh2fVS^D/*g$<(]/BAQ)EOB/jd?@l[S+0Qp>qF[pRm=\!UP75.h_E],6hGX4E"F_O?ZEF^S"B6mK[3Clt89PZRh7WDR76rd620262,Ak"Y#3,LQgDe_U:@oI>)Chu[!2b&$_3)rjs1."PhF>lWG6r[?56u>OC,BuL99fOXsC1g[mBkUsr=@kG[=EuVZC3Xr$1MKZZ=`[GY.s+[&Dc'SV;eS]rB.l#D0h,&aBfL9WAS$!d0P+iOG'%aaG%O?$E]$]R-6mb$4)e7kBQmHb;aO8j1JL\*6"FeU06gE=1,:^r9NX;j6!AOaDgFrH9mL;`G;Nu#8SL_A00rDo5u1O)00qsB12AO&6"3Sk00r3,GpXb\5s$rG.sZ:sF"97*DIHX%6o.YL:eG>::jF^5Ai4".=A3I0A5dSj;b'AW9Lpm?Ci!!X79=b87l<1`A5@>VG"udg9MA#D82b3C2fg;jGX4E$9kR11;cGG=2/k6jFu;*0:eskG0Qg--FE2\.G\'N&91EAl7o`JX;J0QS3D)pu3+R(d@s0Y0DJqO,04?bU8iTdH=Z8!"9Pn5c,BuL906]f[=*?PhGVN#gDD+LI2(pe(88V$U<-`:>84ba>05)k/=YFT%.qLAL9R/EO6niLV:/b^^7QFXk8TT)jBJja02/Zo(@V\Uq-6mb$4&&F_EHFN_DJMs[<^ptG3Eg045s]C!2c;M23&4o?20(BH9NQ=.9k\TeD.H(0EB$I/7sJ'SE`G,ED0(#+E*5&.8i:a'C3`0LF!`,V5s&RoH#,!/>!Xf;G#Lb-;.XcZC1]8D8pG5N@5f\n:j4EL:M__.3'h.k1bWfZ2(ppH67ZP+75/n17WD4=G%5c?EADN,F%&Q8E^;#sGX4E:6=jSH3,3G.0i^kBE&TIs<b-))>#T]6=A_k>0m-JoB2UHX7o1^G<b>$$E*$mo@<cfQ0h3ouE,e3XB6/2mE&M?B9Pm[P=?14F,BuL9Eb@Zg:1JH+<dA=n;FjMW86RcCB1GiXE]6i`=&;_5ATUg(F^d=O2K!"o:fTA_Ao)]]9ef=_=EQ,\9QO6G<+]uD@oG:320X+%-6mb$4%3dW;FG_B1,D44DFmMm2F]MX.p#2?:+KL<D/N6`9lt8b=(*UrC3Xu"6W,U,CiiQJ6o@VW=`7kn@:WtJ==\8E0fMQTA2?qgGpXb\5s'*G6>0G<0Nghf7k[[hD)3q^.q2[U3EA^dF\5PB=*$)hEEGOq9i,\I3HdeXBPqEuH8p4m757Um2e>!G0gds0B1Z\c2-P/_Cb$hWGX4DI.sZ(o:I7`K@WF+f88W2sG=#2N0j/KU8N:KoGZnNR2/-]H2_];HAPQDpGZA6g<bk?C@Pr$jBJr>"Fu=+e<cW(W9R/F.CMccm,BuL9CG81m@6o-R6u.':6oegO=%d.A8hYI+9J8@k9h\/4GY1\/BLQK4ApQpi0m5KKH8/T+2fVE38T-OC;*e/Z68*"l=>su,AT]YL-6mb$4)&^hG'Z\IE-$/71NtQHGV;urC.L]G0KEfj=&jQ67:gC+<_,l'H:;d48P3r(8m-FN8QB1l8nV.57Wq.>Ft[`+7!UM+Ci*WXGpXb\5s'$C=\VU^69.YAC.;WV8U*0EC-bHXAoCgUFD*F392]nBFte&]:gm'q956q0D/CqD68^Y\1G;$dBOt7`A5dYp;(t"P=EA(7GVLNiGX4E06ps@@2L7o8GB$`#0/@!-9l3sHGVhBiECVZLA1qRP0P"9]AQ)?A@<X5E@l5tsC.0e%=t_jOE&DGbG=+,t:cLa#;,:@cCG0iX,BuL9=XuLO0h=;\9J]-t2(ppT:JYkE=EunaCH+%,C11O.=a2__F@98%=&2IjF@Kb>;K@%P6Vi#!:,+M=ChuI)9iP1QEHFN^C.hHG-6mb$4'6PSCbJI<2.gE!:eY[`3B;"hCNhO'1J1/?88W&u<_[$tE^jSbA9Cg:2/bHkDf/9M8MWhGGB\7F@R4s+ApS,M3H-iN3,D\t3@5tq5s%Lq:/l?o12Ul$:N()c<A/MgAOU$?F>u0HG&2#1G@aB^5rM,J0fEoE1h/maE]$1"3,gc2:eO_u@Rt6+0Qge`@<ae40f<N^778IIGX4DNFuVcg:Gd)KBl.BN9ljlBB/VJRDea!&G@P5`1GNi!;D2p.01L,#@5;CNCGe"jE,83E<D.1L9mK,e1J;:4G=+>gBM'pp2-P;Q,BuL913IeP88Bt<87XMnCO0Pa6S!(d:G4[n:KDWl5soKECG.Y5@SU#Y5tXt!203ncFuOIm3Hn7QG&^&q<&8f;06]]=Gq2rV=ZCR_-6mb$4&BreH>tr%B/)o%FE2M*1MTu_7TXJA=&N[OF)k_UF(&ZKCfa_\:K:Rg8O5+(@SKs.3(d(88l%9TFXp?CGq_3r.oU@W<)QCeE[E#U5s&RU6u$46F*_D:@oGZ`F@/&S5u9OW;*m3FEcWaMDJUhAF_#31;Kuq1BJafaH>IUTGVN#gDD+:BB6@f:8pE47.sY]+G%WX&@:gi2GX4DN:j?/I.o\/f:KB8/Ai=la=@['`CiO$#=#i!I=@H_=DKSK-3,M<7GtUda=_;_p6>]P>:0).FCe6rK@Q@1rB4G(:6"P'p88h9N,BuL9C,SP#H!t0$7WE6^=a4b";aX?(77MTK=Z:+V;e%OA3,<JM2+MpLCKY@CDe![0@PpJ3E`Y&6E]A8GF?t%O9iY^a3Fl/o;Ccu`-6mb$4)B"68jta91fmRE8k<PiDD=X]1cT)9:MaWS2FL#L76#0PATVm)2*k#QAQ<o"82!kYDJE*g9PH4rCeekZ9OpaRBehYc8RkA:E$cfS5s$SdCN;.L6UPg4:GPd%84IB>=DCN'6<?uUGBuY9:h`j#8S_6r964$O6:Z#]6;_YkG<n_R93QX.A1KW3BP'7l.qNoY1NuH"=>_EMGX4D[BQ,Y?3E'Tf00r*N7RT%I6#9MC@VJIjFDt]+=ZBQ&<FJg(G!]1u;eC/B96NZ_7PQeYC,dnG@5ouU.rS?G2+gh8BLt%&9N=A*,BuL90gg+ED07Th7RL?jA9L^K0f<Tb=[m6^@97__0k5?"BPq!uGZe$>D0',r<)e$TE_J-3D)#KX0f<NXF')1@9LDZs68*Rc9NGs_-6mb$4#CD^9iGkF7QFUQ<\IoW@T[\==@GVg=Z&K49.Nh[AnF>LGsjW:AkI/]DcLn&A62/f=)9Ql<Hh/K;Gq<s:j6\6Cf<_XGAgZ0.jcKc5s&1(E*,jg2,-D[7ne2006)2&1/:bK<E<1EGskYV8nDHbCcQGpCiN!_Bejd>1.GG+A2%gn;KOTb<^Tb8:I[`+2cigJDJW`P;bSM_GX4DL@8'X'<GQ>k2-<ah6rcs$7;"Vj6WZT-Ce?@+CeQKJ:eaVU06g)`8l9@ZG%FW5@PDLHCM.35Ci!`A82*_O:.JJY=EJ[PF(&T+,BuL9;JC/*DL"]/FEMVL128Lh<c;/EE]-KU=`S4S7mhQA:Ma*(11iC(@ma@3:c1%@CMn,nBjl$YE\hMi0kE3r9/pF,;_g="Ci4>e-6mb$4'56VG"-('6"EqhAnXaoAm/#>G#;[==(teo>"CA92cs$fG#Lh#Bk^=VCfiPg00r35.q*O$3&Y2GEGKZ2:g.:,E)n\_AQ1I$3$okp5s&OREHlR]7;7!k3+l#r9mLAADGak#>&n.S6VTpAF)+d"0PtZB>%_VN5q@+<20:Wh7Ws)XBl%T=9PSlE7R_&j;c$UrBLPojD+Z-"GX4DJ86J5^CLL3rG$-=UEI)=Y@s2?4<d&aC3&"oQ:e>5=1J_sF=(kMgCM\<+D),Nq@7sd)6YnJgD_u3L3(IF2<A\Vt=_C/W2I]W4,BuL9H>[Fh:d\/AE%an23&c"V=D_/dC2b\;@;7Z1=*J^EFtn/@F_>bP94`!,3,pm":JWo@6>^cu7qcR'6>K1p;)^m2EH$5>6!5m$-6mb$4#S`fC/n))Ao;cO5ttES;fkcU2f(KMF)Y#r12]O*Gsb2C=CY#u:026t7qQ4H02$4Z>'4Oo84I<7DIYVAGYV@c2,.mQ7qcs(3@5tq5s'7%Gqh!m@Q8FG3,2?$<cg$:GX=_k;H%CUG'J%';,9&d.o((q.q*!bE(P=*8i:a::I/P_G@a`21G;$]<\[^&8i97$05tB&FD*!GGX4E%;Dr-!H"L&O<De!>@oZZ+<bcG+7SkmNDH/?8Ci_C.FD+3=C3)gF:3SUB;b(CpA49"'F)EWs:jQqME,BPr=Dgr6DKK>d@:VhS,BuL90Jum);GqQm69/UW0QD#,<b-#l6"aY'<c^2sB2hH&:MM\+3-IkN8M<Y+Ci)sG;ep)U<`sE#9hRoD=*[)EB/r=R0h6.8G"Q@$-6mb$4)-c7F(7Kr7:p%";-HmRG&CD8DG,.PFA[0@<&f%k0m%ADB1bR%BPKtN:fDCZ3FtcX@WHO0;*f#-E@W_GCH,'WG#M4_=t=,cDC-TQ5s'+4F>[6CA3k<\9LpmP6[2Wd;diU#1dlG3CLL1P91retGr&36F(J9RCKb4$@s<0+EFVRS:dfS?1,!H;2)m=6H>ILS2eHKAE+^LBGX4DFF^[%J:f;%B6#0"`AOCQb04eTQ=*dn*G#W^2;aG,,A8#pAE,A9?E&]L_CMIfaEHc#49Q3][3G_M]6Z['&H#$t`0i_7r8p<oT,BuL9CM@Zd20DZ)9h7Q\.lTD22Ki#CCJB"JA1oiCDf.4(;f4Hr;djKN;Cc3:8TZ_'FuNPt6ud!:;`JW0BQ@$I<C()1DgFB806]^"-6mb$4#0o49QN!i3(c#"@s)O&@4tS>;)Ds4<+7Lu88<HoEHQ1X7qPFjFE^]/==\2Z:iTJpGu&U'12f`a9R0c@2,[IB0/doK5rDb"C*k0M5s&^J>%;&R;CabK0NV=RC3Oqn1fSWXH"KW&1M0T>E,&<.H;%+86Si7oFu!nkBkLsS1JU\Z9egs2E'eMU2/4XM3D=O10JZQ_;`#gGGX4E,Bh1`f0edB'<C(([7qbtG:j.(\Gskb0AMH)$02+&i2fqYl0hX$59gio@@S9ZiGt`$uFA$:GD_sC0E)JJL<AmTE=Z/`EA5me#,BuL9D,4_'CeAVi8RaA105+F*:G4JG=$^hODHAho=B0H7G"b5BAi<OU2G7")=_]cm3CHkC96O!@H$Eq$A55+0.qhag;g<LgBhh,h-6mb$4',<mDe*Ho<GO9KBm)0e<D%ElBK.MR@Ur"aGr]UiDeCt<88r$LG"$UG7RBspF(oH!BPBgh3Fc'1=#!2u3&)poE[sFL@R`%dE@)oT5s'-f@nUl7=Y!B#8o8*Y.n;HhGYpJ(0M#&V0N<<SD/N!&EDoJ"2cFui3H7qTChZ^TF&6=3Cc,rX=*/1h;(H*r<]+>t=&)%sFB9e6GX4E%7oa#CDKSij;)r&>GZS?PA5QB);g<D'B0f:<;d"EZ;`JnQ96#6#8S1[UG"t@r7rC%i;.FKACdqu7A9gmA;)r338n;XVF&lfu,BuL9Bl\8qA8-(*<b,obF&lgcEcY8lBl\8qA8-(*<b,obF&lgcEcY8lBl\8qA8-(*<b,obF&lgcEcY8lBl\8qA8-(*<b,obF&lgc-6mb$4*#CCA8-(*<`<aZAo_oM68_k"<*(be7X$A#1,*NgF%f>R6u51lBidSq9lkM8.o0;_1NQ9+.n<3.@r")H2/P<u;0lYE89/3ODC-TQ5s&.I@<c<M7mg'-CNX*)GuAK7CMdu[@7rmaF[o>AFB2LY=E[Y;<,$&U1h'9K:eZ%8Bk)7*Dc^sf9Ij:YCfFJ><GHS4@V\>B7oq#^GX4DKF)X`l;`/8f2/$Vt8m$0jAPH`VG]?Pn=>Y+MD*qlODFeY*1bq'LGC!/'Gq1anAo1L)=%7:DH?saF=))/S84H?a=###0=A;O;,BuL9G?Jl@3DW7$BOsn::NC_m6Vg933FQ&DCiD.&D_j7aAk-TZ2.]Zp=?(OY96N$[3H[2uE&UsB:i'iYF`L8h12^iL0l1u@AS5^4-6mb$4#]biEcauW1f$b]F[S32:NoSfH87!Z.o&TKAMnF=:ek_8<aeEIED0nR:/>d]<^^+I=a"FIF[SN?9i=r,<,5,n:In0&3Gq5A67*q%5s'*D0mZ<!CF_tM.nF/dATMI#:.@s#CG0U,1ML`B0f"#.G#i'R3-7#L8i1HFCfb+d0NEC:GrRK7F)kG[7r<5r9IjOM7m_N(<b*O%GX4DO8o-A23&NK^BJs[FASY@JG!\rD7s7j1G;:jg2,@[i1/W767nI,e<GZ,^8QSqm<D7O7CJ@Sn<(1asCe/\JCO%m35tF^gD)F:",BuL92doU'3+P!cEHF3BG"tYN=`dOr=$o\Y9l!a=DdkXoDFRH&D_PWg>#Am7>")Rd7r^CT0Lo#d6!._r=&qt'3-]U>F%:4HE-$([-6mb$4)n1s:h"ZK1I?1@06&[GF>Ru\6:adHG<&Dd8TJiME`Fo7=*6r?@9Q,RC0ErM;KZe882Y'l<]+u%@T-<FCfb+K@Q%^g1NYKiF=&5W5s&q,8U,Mh1KS+&79FP07s?h"3H6ln<-guB3-$N?ASu`q1K.=c;(m5_F?*;SEAD8`D)>9g=DV\+6TA4!D,k:#EAD&b9O_LE0i',@GX4Dd<E<.?9//@_>&H#OBiK:9FD*X49NbM>FD>E*FuVcj@8p]:Al)9=1.Z1l<-i1sGuS3_3EK-:FDlGDC27WS0g\6G6pkrEDgHCM,BuL96<.PUEG/uWH"0BGDG3\i6tnPRAhe=PE&DhnAS-3G13?Sd7VkV8:+nLpH=AWt<+0N70N*"38l%uE8O[,bF(oVjB/Mt.9M@9G-6mb$4'>K=F[\)`2E,/YAMJIUH"pApD.RQ;<&7-*00r<Q6o]<aE(s,J1,O/JFYR`A>!ktlH$+(08MYC6;d*@C0ksB[7RKg;:I7!@GpXb\5s&sDG"cUg0MlIRH?`RIAi<"i@VRlJ:eWlk@sV6O0eYt+79!3+@THVh=Yt(RCe\Gd:H2!D3'fo!6ZPUgDc'2R6?61;8jlWW8T?(%GX4E7<d7Vh:LR(3FB3@(2.eg&2H"R:CbnI_.s+<m1.4]U2-Me97<EWJ7Q,6G1jLcbEGmR&=CXlp3,M;g96P)P@ngTPGuI.DD.6Zq,BuL9GUls@:1\3C<d$B288N9"7Q,?BE`PUe8jR5IGB?JX6>8G\68:DV@OkJU6:Xm+Bhi8[@4t/B7S--$7V6R02/H>K3AjSdH?qni-6mb$4'+m-85+"oEbIC-H#tuZ3DEsa0PYiX@qnJ'AP#3f3H8n3<)c:c9i4f11H.p>D*hr/7:RubE\hSjD_"e->"M=UF\4T494`BN<[K&95s%nDFA,anDHBVZ=`\M!Ce\DK@n(HQ<]+?#BQ6a\:/"A8:N]etEFUt+3-$N:9//h\2`5)d8iL9SCc?!.0mQ>l<)lq?@V@\l6T$28GX4D_=%I4=EG0#fD-'"oG[rfm>";A+CLpUnG%NU+E*?CZD)"d9=\*@G9NOQ"=E7A;:,u`^<&I?`:GZj!1/g,I5t`sl1IH(`BM*Co,BuL99589b=Cl><@:a%=Ao)('=Emt)<,tqtG@jK.1N?MT:hXuDAR]Le9P$%h6X!r-A2dG10ka]^1/UqpD,=q$AP>X5@:W)3E&D91-6mb$4"F&\7or;X8n2`rF_+QD3C-5ZDbs&:G\1#d7nR;fG#LDG@PDe*Dc/JqGZ&3c.p-IaG^3mY;eBi*GBY]7;E-=F<E`reD-AenF=&5W5s&OW0QhPZ@r-I#1Mh(lAlDV_F>Z!lBNf%&@5Mgi;b^D5G@YDi5r3O<84e%[0R6Si2+Mh)1JMV$BgQEV=#2LR6Wu9].sQ1o@V$l2GX4E"2/Qkt>$4C=2g%VGDJXDt7<NfEB44kP787328Ol*62-G/XF*UG4<-E>%H;[(1F@%rEEcEmPE`b=g7Vkgd.q^YPC.<J,G'@aL,BuL93E&[V6Xae3<`!lk6VD<4G'HDa6>Ld)9hBVR2Jd&BF](b?GuRF,0euCEGZHRmFa-qYAl*Vb1NdeN;`S8?D0T)_G"aYFChRoF-6mb$4'=OD9QbGD<Glbl12^r#H9tG"7WNd!9lEHgECF\dG"HCL0mGQS7qjkn@5:T"E)nJuH;ud\A4\UI8n!$W6?#^n6;][XBl?U%0IA#h5s'?G=uS9\8S^(S8:"E077)2X8TAJqBM)#n3+lf49Mg!h2-4iXA2J=/<b+`TG#h:;2ek'5<bQVrF\,89F[JH+;-%pA0Lo2i0h!E6GX4DZ92\SXD,>LK:2!0f8Q%i4B1>Q`02,i$;Ia<X93G\63E'a::/<PoH=f']AM7+B@VI]AE]@/q3&acW=AVJ&7kmq=CJA[s>%^JT,BuL91Nm8GCf`>kB3AD>An+YY94MO901fbm;`-OZ2L9C[Cdpfc2E#Ai13$`3@X1m=6=XVG2G.mFDf&or3DFC.AP,NP2-+I<GXYM!-6mb$4#o!-AncO.BkpXG:H1m&9Qj-JCiXh^EADJh=*.k]7;Zfr3I#IN1.+WT0LSKJD_XOW:e,SP9K5X[FE^SQ5q>E>2cb0J2,.RX8L>[,5s&so@obR49K?O-BME>gFEB$L6!%q]AMu%n.nk4^<)t\.1J`0P>&d,U8n)^@7<((CCdTmdH?;c)Anu]e0i:_E:K2.M8MO7%2H(qIGX4De=Cl,JC1\u+6[:UMGtq(WFB:/!@9PuTA99J!794VRB4<cD@nL2`<cDVA=%cRi;fcA#757kAB6S<:=*7XrD/2^gF*TTS0Q_Fa,BuL9@8KBcEABskE[t6JDDEt$1,a2_AOfEqE-,5BG#rg$=Ca6CG=cO;@ko]3:.[6]C2?IT7<NiGG[b,s9lW[AG\^r00JQ.8GVrW--6mb$4"sQYF\YS>1Me^HFC?mWH?(lFFA-7?=*-6.2G7n*2JY9j<DcY<=&sK901/EI=)1uQ85a#33+GO*;JJ]jH8%0q89dce8o..#;C3W55s$l;2eR+\=EI%fH<<pC0i*(-F>Pgr963p*CFaB\=)^u/:KgM32G\B_@nB-uFYcO.75.#J1O2bp@p))gEFWN[2_]Jj>"*1FGVUTjGX4E(G"m-qE`R3OH"8d40Pk].FC]!$0iK_ZG@O$e6s!r@Gr%ij7RM>YF%TM51,LLW<-VSj>'Wq(:d[W1=YP)<Bh<#*0lq(d7kZeJ,BuL9=E&.q<-`:1D(eLN2)Snu3AGS29iY&37l)u"Guo$*9L2'FE&9O2CdL.'G@OEXBR)sC1G</o:KU/4;K#0(@ol3=<*46@3-88F-6mb$4)d)W6uZmL:iSgE9Q4!SCi2+%@TQW'DHCOm;.DCO6<.l?=)D#+=&2+t6"4nG1MqA.Ce8kD7TF%S7S,?pCF`mg@5_n4;gM5Y@4!4D5s%h:EADPjFF%jb7Q!2,@9$EFG@`IECLM3U2K*b4Ce&e\758^jFZ<r!85F279i>M(Gr9Y0C26XV@s2rO8n;FDCfiQ:Al2BE96_d.GX4E8D.@-Y3DM8K.lg'qE_^XeD)?&uAi3IVAT^sBEG0T!02tOoH#5ik;fQt=8P",<BjjbT=)V/XDJjboE^b7n9MAGC:/>VH7moWi,BuL9F'!HaD+/V?AMZ>'FA6su2*k_^=ZKAl1,(RS=[c:^2`<<fG;iPUH$:u!<FU23Ci3-=ARR6%<+0EXAh,hp@5LD=A4nj75se:f-6mb$4)@D_:j-\T6rm3"9/gcJAheB\0m$E:8kO8Q.sa0AAM7gTH=C<%7Ug4\@T?/lBJEIe2ec5i8PCfnG\q):8n^t'FZ3fH6qg*PCF19N5s$qqH=TuVBQuLF68Nb'@ngJl2g&PD84dANH9$.@6tKFQGqh94@:X=W0lgbr6oK'9<I/S'3*JUG3FbcDH:iE?Am.$;9K6*E9Q;C(GX4Do;bh'XAnH6B;JLDS5qdOm.lg!UCb&UDDIGDE8T[aN@TYNA7<EWj78Ic!03D%MF>lK@@8]HO2-2e==&NpI:2*6dF(%L*@;Spi,BuL9C2lsN:1l;)90%-*3-6lN93=bE3-Jt6C1_X!@9>C"F>$=3@5)jnG%ONEAT2ln=#i!*3Ho+QCb'R*;H-_96>KSG@PM>2;f,$"-6mb$4&]m=@VKmo@s0PE:iK6!1O1W^D/O0!3-KCF0Q]-H9JJq67s7ld20*an7s.RH@sV!DF)cIUCG9=;F(I^;78m\eDg$;L:KB>`;C3W55s%S<1eq.S0kPB.=ZB;LGXtMKAi<(83-?`N3F[&?<&e_s7X&Q6:f:n!2dom%0OmOc1eUn,Dg"*a04[h$Ch6R@7;5mq3)suL3G^#eGX4E+GXZ+=Ce&Yk=_r%h2-OR"A4^l<8S`/s3B:/@@8UlX2Jd>KG&_;?DE(6[2)SQ,=a<n>BmFqtF*L)EAo:I#H:`!oDc97aE\UWB,BuL97!CC@;Kl&S=BK!SA4gl^Fu<bf2,%pEDHD+)9NOkC<*+*2<(pCm@U_'7;fXltFEg56@S\a>7;u*u1K[:,@;SSP6#/,P>$*ac-6mb$4(E>(8S^XI6qMDm;eAd#Ch7'P:+L9=FDO9S1+RBc@9?$:Cc?)_EI(\HF_l1[9m1_V<cWCA6>&Y^1f\g=6WH]DD/j\ODIQd>9dV*05s&aQ;E$7Q6<#TuCHXd5G[YP]8Sr*$Bl.9kANgGD+<VdL+<VdL+<VdL+<Wd"Eb&cCChZ'?+<VdL+<VdL+<VdL4>1_cAi`4oF?U$S+<VdL+<VdL4>1qfE&ps3F_tT*@;0P!4piDT+<VdL4>1_cAi`=kF(96)E-,f4DE\CM+<VdL+?X[TAi`=kF(96)E-,f4DBNt1Aia@0Dfp.b+sI@:+<VdL+<VdL+<VeOD/=*23d>(P9hdbpBQS?83\N.(F"Um3Ddm91@rH3;G[YPE0eP.5D/CpM$6UH6+<VdL+<VdL+F%a>DK@j[FAc[^4X+Q]FDs8o05bh`@:X:cAM.J2D(g-BE%`pu0J@KHH#R=J;IsofF`Lu';IsGb,!H>V+<VdL+<VdL4Et:R9hdZ:De!p,ASuT]6p>a9Bk07o77K[57RJjr2F]\p6npDV2FB2f1-%'T1.+Jt2b#bh06goE9hdZ:De!p,ASuT]6p:r#+<VdL+<VdL4Et:R9hdZ?DKBo.DI[6L6p>a9Bk07o7Rfd67RJjr2F]\p6npDV2FB2f1-%'T1.+Jt2b#bh06goE9hdZ?DKBo.DI[6L6p:r#+<VdL+<VdL4Et:R9hdZ:ATDL.ARn8NDf$V;A7dlA@<-F#<-`Fo4X*d8F)Q2A@q?iJ$6UH6+<VdL+<VdL+?X^e;IsH$Bl8!6@;]Rd8OPabF_PAI0fCsV1,h0Z68_4m6praa3As5Z75?kX5r(er6T7Io4>1bt;IsH$Bl8!6@;]Rd8OP`L+<VdL+<VdL+<VdL4EGUBAS*u6De!p,ASuT]6p>a9Bk07Z2)dfV2`O,j2+BSo6npDV2FB2f1-%'T1.+Jt2b#bh06;55AS*u6De!p,ASuT]6p:r#+<VdL+<VdL4>1qfE(s%f6tLCQG%G2REc5eY$6UH6+<Vdh061T83^dP#@rc:&FD5Z24piDT+<VdL4E=tE3^dP#@rc:&FD5Z2+ED")3alK9F`]bj+poG8+<VdL+<VdL+<YoGCi4;TBl%U.F*)G2FDl1_,%u(?E&oX*DK@F=A8bpg/n8g:0556=F`VYF@<?F.0/5(50-WRe+<VdL+<VdL+?X@SCisf@Eaa'.E]R-@@<-I4E):RnAnc'm5#?96DKIuoBl%U.F*)G2FDl1\;flGgFEMP!Ec5Q(Ch5d;+<VdL+<Wd"Eb&cC6tLFLEbTK7Bl@lQ$6UH64>1_cAi`gX7Qq/A06fO&D/a?'FC@??+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL$6UH6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+:956+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<V"6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<Vd6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL$6UH6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+:956+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<V"6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<Vd6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL$6UH6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+:956+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<V"6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<Vd6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL$6UH6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+:956+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<V"6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<Vd6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL$6UH6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+:956+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<V"6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<Vd6+<VdL+<VdL+<VdL+<VdL+<VdL+<VdL+<Vd64?n(0@:O(aF<G.4A3D,\,!S9kmJm__A8bpg!+^T[!!!$!gAjS@!<E3%!<E3%!<E3%!<E3%!<E3%!<E3%!<E3%!<E3%!<E3%!<E3%!<E3&!WiE)!WiE)!WiH+!s8W-!s8W-s1eUK#QVO?<s/O9!!3`4!tbM9&HMjL!7CiI!!WK,!<<*"z!!!!(#R1G8#m1M9!<<K=!!30'"9AT,!WrN,!X8sR!<N?+&HrdO+U8Z)!!k:n5r'Z"#uO#)@3dWF;K77)@Z_s(Ts=)61i`p@_9k+fiDVXdnWKV7<-(Jt2b.@+<E<0>ZGP&LnmmApPD!MBZbt8P.6(r2FXfC484cEU=^#HOBkhg8G^4UhL51SAMNjBlQ^F20UnsrdW2Zf([C3QS\[o_u`lH0Bb1+tmf@\d1jQ5OekiqC)p%J.Tq>1-F!"K,4!!3-&!!E9%560U$hZ!Qsp\=Kr[qYQ-`T_f/T'UpHcVj/dWOHS97;Zm-eMQkVU6?OUUeB$rb@G60.XH>l8M#f#+&Y8jhYlnJYE7Ye)nS&K:EbSYH7CPCfr6Nad,sY6pt`d=3D*]5Ic@YLP^+:]Je^"uLad&8St*'n>FR>@^O,^\&X3$Oo#EC[C23`>GB?^uOc&0\1O!7VmjjeC$;<?YJsB:ioRN5roV_kQIeW;[p=oSkQcagTaa]BoqDim=rrB>hIeW;[p[@fl^/P%3hFmcsrrCHifY@BIqtIjPpU/m_G:1[Bhqe(@LXs/pnlL&']Yfk%M8],^@`[jB'bf2"e4I2\UrMFD",<DIU.D9A?W4OrIJ_p8qqf=W'7M%t%pLY>H@1PE2r3;f^*75@@+eD$(M$7k\1,e+M[i@FX#h$MihA=23n;7l21]:Q=b`=T^&-^#fVcK2pV2(LZ8qNoq2Kbir`bpf2fAPsm;-+Ma43[c*mN@trr=*YZb&.L6O8tH?$ER<kDq!_XOe^pbu3\r(QUAlp!n/h2j;p'q+pSuj6+<SK-t($f)25r1m=b6D9]I[UF!VJ[R-96m>KZp@OY3a/Q8XrA=:)01knD5RGa%ip<f8Q@k]aZX!LZJWP=<6l_pai0;8_<eE?\"'lV1rhnAsU5FAYP.u3;ka\C_kK(rhSrlK@T@WIUWLRSrK\$p:#mmsBlN3p!^j*9^k\SN>CUT3h$.E#V.@1cg<HCT^Z#.M92^0ps@_LT@#pHIQ*(\,4hp02jcK"32J8O6..ch;hKNg=`3'cWcbA>o&9]KJ+N38EQa:du)d'\.>g2m>Y0fm0%^8n*kNW^U;pW/b''Ci0[0]!<NLIZss2(1H[gbcgTorr@b6I$*`SbI=nbo-)f^T)SfUqV%rq%$,Z+[bS^cId>]AbPQ.Eb\ZV[=DkY8>\tW`nl!n6D>NpbUmP+]aJhkn:W$Q7;/^LAgs.-Yr6!d$*OE$9B82_YZh@uM)7DUWDoVd/P/qLq>%;_nn=kNXXpTK&9isaQH"n<M/O'Em2=O.uB;/S`E^4B^Gg[M?Jc=EBJKULRoDop&F7f4qIm`X`mlmKA/_&Mk]m:cMD>qlH?HU+#\@,`<gGKU>Mp,[DGp/;R.[[3@(qc_,Z5I@lW%0$hYK,53/N$K]e3tWu\$&m,O'd*+_:nj_eU+V9^%M[%`Pn5!H^b<tb<qDdQ(Bo=3MV>3L:WD>2hJ&qU,Zne.V!^9N]Bta7d<UgCAMUZ.-=-ZC4m3g1hQ%<Gl3*7b!h2L$BRORO+-dQqd0/`n)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"oah'&Km.pWq*XZcj-R\9a74Ynqbs1EgV:?Z`Y3H*qQkG/2KhGPLnWJ*f?rW![5`K$Be(UrWsP%9E`HJ/cb4_@iB_r9qnqIW:AfI_FFS(EY,TS3*m<@6biV9%mOX+KX35#;G-lBkoQBb8k(W(LiMelg=HFJo@@q.Bni4c3A=35IMDpj(A<EkQBURCZ"=k30O:T*Qd+eO@\,!O`hT!9:rrD9PhV\9RpT!-K3G7parrB^Nq$[3&UGm7DolmW]qq8NpkBiEm!7&-)kjNupn+_4dk2H=?HQ)^0rrAh3H[k_;hnS-n5F;u[jtFe_r>E5:rrB+5qto'W^ZTs-rrC?TJ*??Mp[@m'hr`nt!.,X[J,]MD_g?n+e).q!b<M@)rT5cS?i:kSS,WJh^&.][\\I<SPQ(X.\UWi3IeW=+HJdlDrr@Baq1&DEUVhG.p!_g5iQFHQ&,kWDaC"l`]:8g#X1eE-ft"l\H^"I0cFJGgmsb$"pj1i[iVrn))Ynm_!2IGYJ+_:J^Z!@#Qk0/X0?@N!)7uC<!3<g1qq8NpkBiEm!7&-)kjNuoFoMH-YOcu;BO-o$`dRr2cX;.pq+nYH*rc69YOPh-mqni0H]*,Zn/J9=m]Q37Qn?Fh1RQmdMpl2jq91^De?pu$V'Ujs7KaCkbBtuB@,EqfVp%qngH0TVXRAm&[<H9*DMd+PRr@Ec'6)O^F1Zo`g,iLTRDWSaVlXQHn_$$I<00lhK!Il4UfdM;_!ZWg;4YS?5%c)k1ZbmgbnJUJaWsbb6BXh'9po9(Jj1L;^&<2hr<E4gT76O2O8LL]48d%r-rBPSc#8Bp/\XdK+%p1u3_-gU#?l:gleC/eD!uEl;a8ksLE76J?7G*)H=P3K,:,O@C#c55j-S:ZCDPLAq>',9@!!tR=F?D/n_a;gfDTQJAa:tng3YK"B<`9^-Kd$fQ.ap&0sif))I^0*53j:n/Ye#4U8&^O;Fq4B-1dMSUW[-;<RfNXr^g0"'bVd3c0BO$d&ga<>tW.gF^N8bms7TU_q+hf2\5f<f?=0or>lp4rrB3nopl$^LFiF45PLP[+b0,rmVi*-p(Mq&2`L['Ee!o:0Dup[hV9hMcMRFK@IgqP]KaV1jaC[l]S.+j.Qk1ZDToO=W_+1sl;F*!Mls7TLF&"PU'ih@aRMtB.-acomTr-RS:<4dFaY#l5F;?A;^DlY2.BMF3tFJ]5s*N=PH6XK2-!OQ<mjU^VF[L`N^P0q&4lQ;GBW+<<Z0,<.`&4:1,>=<fp%X;9t:Mpn)"&X*s2FFm/I'VIh'1TI'hQKCBc<$3nFVJ13e[JAXY3Q]jY%th1r;)Bnqjc[SHb>jKU?]\<X#9WF]XNoHj:5hqNM>-c^+un(k>.MM&5.?8FTIO/I2a0O'i#I!4u59dH=@,hlP'L9cB&OQN03,tK<+@BraB0m#E(C_j1E,\8(c\OWB=Y(!5sQ'_H)^O%n'bR_0IIeW;[p[<S*76g:8cfSFro$mYE]DHd</]IW$jDT@o9@?$GV50Xq0nS2mM]YeKm-NFOoudU:0\MT==&RQcUo08:-8HHnRZVp*rbk"XV>+?d"*Nf#VITC6EH[SpFdGrg4K>q3<bjE]1n"=09YRJMro@q7SuN+>4@tfa.-)/2>p$cOk5g4(=C4L>@5O3,5,=?1-;&jb+)_nH+/Z^orI+S#b]Eb)\,!O`hT!9:rrD9PhV\9RpS>:r3G7parrB^Nq$[3&UGm7DolmVBqq8NpkBiEm!7&-)kjNuo-Zlih9E'*a+ZjnMH8DOLI/M+BI@8i:gMV05a4o+7hn?sr4it9UPh;L:;bV4D.Ol:uW=i1[b#TEaFEs]oN>[?&XaYAA1Ci4,*LG=R"6FaJbkC_eqjS&%[`0M`ZZe*Lgs0rO)@@nROOfYnV+G801s]jnKj$ti'o7uD\@6<t<BV?\B.5,q9[UZ`$FtR_8AS?i<J#gJ5<q7'mse]*N4i0$H8jmY:j",]m4ISYgZr;74:VaGp?uF&1-:D<FtW?CO_3ER[k!Zc9i53Vb\*iPQBn)tQAUX?9V.',hpAR'2BI(D3g[$n#3k#,PI#I&e_7O7?KUSph34q`mLA-bj/6%$\bbUFq'E&gOikj'_$_t3eE/_ldi/*>PSDPD;,Yk;;(Z&"_MKj<ma!HTJU&PR@S`uF+FXP;O+-d_q\23:p[<Drrr=inpfM.]q!m%nYOUB+?cK(W&$bu3HZ't5gtfNup%:9c\=h\?,;i]6o4td\dq7ZNhAb2VR<fa5.]Y@PC.lHeVj9=X`j3?;5N,!i?D661pS\!JoXp[.H#-4"\@,^ZYWH<sCf\fWgfnD;;hiDQ0$E"7M7@af2)5lO.aM%W_S>Kn6KmBY9=R&I3Z<mE**!$2H>04RP,>XE5UD-<2t=]tH"KcYnm4PYe).k(On'ar'SZJG^.2/`;_@SgH1`Kc\*b$$Cj^HH@(Jgs%h2)kTZ:r`PsIjlEqmJXEn0>fW["q&5]0:)pAY-aPl>/Ua#.>Xr/BF#!u"Vq=E'fs7>pIkEUh;%;,QMbeKm-GI/qqAUFA=)DB'^GLDAS4FOq;YPa7^Hm2ZP1+AdOq/4qBVfU!uC^"!p/I$sdRg_/,_gOC>m]<nH;=jjTn`pIX=^#c:eR*ln<WKVC9Z>VeR72i4^,W_k.i"'?SG^!M8FrSa[rrDGhc/19UXK,8HnDB_9F$2k8M]Bo%k-DCs.a8k8@+Wm.#D)8&5!lu`k,,_qUK-dGWL@V[K7>,RmQLI",O@2[&)Y('2G[t/:Kgi=Q0Y$Yh\uYF"\7CdOkDh&4gf(aWXuj'WJ\"c?U7O05c9a>eeg<".shmlWV4X2hKplS/%0Whh"sjT.DFe&c*O%bi+f$cn[(K%W5[<8b`d:AY+ToO,[SOJBPK"GaClri"pX%[Q/a"@f**$dmI/p!QfC%&-p.7=Hs!Pk2U;,tg-(G)1$oTHZ@5*k8)JZ:^E3dgikubLbtS-)_;erm;&\FLR+WZO#`bm,-g.<jRt(#9kc1Wr[sgqfS`>L#A67MK\Q#-%LT7/0F@VBL)qAu`K,I)rKa9F+e8C/;<J'!@/jF]#HuWL/<hc<GqSQQeobi5eHAus>O7nlDHhY4lJ!O16/2uVh!.F#'pJQJpY.qpQ=PpZ7W%hE2o@]D^9]*mlc<@NIWRq%)N6=)%n`cKDQ=pj[l72N4+uSsk='+FTNoskIK`;&AU)p3!Cn;lTr`s@j%ZB.G#q9P$qa55N=(M/c-!sM(KR\5[Z3I4HFi4^Z7&rH#)/OV[,dfL/EA&MjhsCb#f1Kl7.up$R<NM%FkZs%Sm]0Yt;97gb?`>TOhnAGtL<SX9(*aR(2Z?bsS\SlXZoOX'D[fuFPJh'Q)*1m#EOf=T8r?d8Z8gX!'^7Ff_XA2d3k@%D&&"&Zfc5HN+$l73=4(S6=\:/KN\`&CWe.i)OiQ'=Pr)M5'su:=2.[M61ohm"`lsSj##[_lfVYaQWp%Uhl5:U5AS#:mARTQ#^t]Opp[<!+k'Q4YhYlp"rU8V8!WN.RDuBV8q6f`;k+BZ<Qgp!q7sOYadbMSRU"pUb\^eBI\2Jd\0t<^\q\'T`=UH-;AMb-),E0Z/#F0ji'I^Gp*q_Gk!/1FNZM?6FrrD,P9PqM+mp=?*]EW/Hj3D5?q\s`j[e;p1Qok%dclA<V/j?!HVl_dTECJqr>=<3iJ9qJ^0/]'8AS<:.jD*o=P98k-VjZOFJ%:tiYYkL=.L5h]IeTiir&nuiE;opONI8M@!7Bc=^\[3_L&V/3b<M@)rT5cS?i:kSS,WJh]nZOehTa=F!'Au.rcQEa!(VD1^OO/Prr=tgqq0NDrrE!=)r(AmY+GUl!"N00^jkf-IR=&7kfqo?rE\mLhTa=F!'Au.rcQEa!(VD1^OO/Prr=tgqq0NDrrE!=)r(AmY+GUl!"N00^jkf-IR=&7kfqo?rE\mLhTa=F!'Au.rcQEa!(VD1^OO/Prr=tgqq0NDrrE!=)r(AmY+GUl!"N00^jkf-IR=&7kfqo?rE\mLhTa=F!'Au.rcQEa!(VD1^OO/Prr=tgqq0NDrrE!=)r(AmY+GUl!"N00^jkf-IR=&7kfqo?rE\mLhTa=F!'Au.rcQEa!(VD1]B&tlK\$/'1Jd-Fnl,@oF@T4&rrC9XOZgV5)=<XE<OnZUfNk2]pHI0MemQ(EG@g::27S%)FS'\h@ks9g<'ng)a"1uCOm^`6P6]?^QT`ao^j<>jqe+u.E-<SLb&*`sWl]*`h7b[j]H),a0<_hh6QJ$Z3ju%lH"<YPVb(AD&s=@^OmQ_a[g$`bEm`?:j_LlqhAXCIB;gtafVLE`UoP+7<Ylk<n)"&4^@u".55Y)]%r1f-g?H>Sm#KrZD-WPpWjWE,m#BTkb"odo-JI,,HR$)mXcK1H6hckhMoEhJMd#p%ZJ8dcd[T]N@=%*Hmk2K4D,e,o@VniY]X,jO#MiF`(MmP21O2HcV:QgEeI!344E9XlDddX4qnl8nFL:YhbC:6h1=%;0G4EG/,O$1Qku2$ZhYqtr2#dR7CL+'6YKUjUJ=d];cG81\VkqH-\&h5'hAbagRJ;[d6.PiS3KDei6R;o=WEG_GeF.akA+]ZJZfJ%^.:7O8C@X>[M>\fUg3@DV"Xa08GpM0,U8A^c3nd;h[PF(oHZ.J(DbAMio5QYd8bhueA\2EFbK#=W`sQi&VS&=/,Q1Nh6L,=Z5K2\*iU>Xr]C1gD\bt<u7b#p\fO$ghrr<X$;s0/0I7(R(kUjO@PNiTC;hsTE0#+1'dB$':eVd8LUXmZ@-CVPFq54/l0TP.]BAMGq]4W3[2jGI&f=AEfUCu)IQG"Qrm]r_D<;!W`NMb5-An<$X`ol%cZZtnai_90:e-=r%/:r^0J$N+:5T!`%hqu,uVYKPMeElGRX0R(*YWE2kl4U5aGK04/Ha7jqN@0`IQCC%#YE>h0NiH)\-W!q_"(jJ<qk&@VXmIW7]_ASrh:&aS:t'<1a-b2qeHiIT:=<]h.br7I4+Pr4"0fNfgC2Ui2$W^g'@(NCbq,$Io?H*\Skm+J&,i<;i:l\M-X1tVq$5AK1mOUthVH<(<Kn9r)QpO8rU$kiBWPqSqapM$Eu-DcNF^q>YPHfM!*%P^[Vp-Yhd"E%;qJ^Zf\7%5P2C%=c//>eCX#Rl287pP-;K9R\(jRO8H!E)W8:bop!fcU>0=Ec^SJ\C1aIKuL,W=b:]#WjpN.Jl5N,APc4Aq%FtO]:Oq$tPB&hT";mJS_i1TH?b!qN+?fc]m*;CT:'*WeMQZ<6b.^Y$T"^9"D,Pg*o!&3i$WhGH%j?:\q.2b8&A%V8NDhY>_<_r:GhNHm1(eLR,(hQ+$!4',E.]di%mX0:VCVKcoqSSC\;5d[Rc3dQYrgnOdqqg]>!6VAA'fkd4kMG.O>pnMhO7l@u8F?d5EHiI(nD&,RNgK*[ogFX298V="SP`1<P7+oVo`k'`N:e2-P"?mpUTMU:YZ%k5_&qj:n]0a?>79#QWK7&ZA`L=AcNOe.K5fs\aS!:<b09/['H:P/9+Ete\X\>Np2Tn3H>RQa"[,RbbS5ssF0RH&ViHqFItcLfPnmL);U4F?/2[PWR2Gl;_#Akhp[<Guqn.Df(Vb=k^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^dchW"ebrV3O<E;ItD+\L==15)N_-+8;R2G1sf$p\I#*%B0Kdqu@+tOSkWFM6hdT1"W-!:'%^&-UipCHj/q.ncnFXJQjR>m>^T3=[kqSm9@O,8Gp/0q*UZPQR=j2s_3(1CKU<!X`W.C['=pV2&%=\Qh>3EF]+XJSKB>iO(6Pc^q+<Oa[P&CiXYbqfGIN81o-@Xb-MpV2(L^9O)BXqmueYh;-n-Fu?(3m;/P9a+F.Ou\jt74aQp\n6e(=RaHDe.7$&msatHqQK).b>+e2V1$&4gTNVrVD^M[ITFS)Y]@Qup^3+#7^&l56%4=)Vkn?]N%T&;IeW;X%X\TYpqJL]E:&&P^o?$,qds991HEVU/@&@D>cf#H>Z;;.5s8b6.>,^f<:!M7T[d?cRF\6%Y,Ul=p[<8mn)"$3hYlp"rU8VAn)"$3hYlp"rU8V-5P_qhW8G9UreYs=W].rUf__F"r)\@8N1S\E:P[)O"[A>lD7TtQUld-6+-jpU8kC6Q+d.F(obABnn)"$2PQ(X9fD0Lf!-oU?+8QshrrDnrhnApE^!+NEj8!hXaACq6j=b7K)B-b5_+0XE)4Jct;5K[.'\1]r<<T=sS>M]aDB0$^p%Rp(p[<HiotL4?G%Y/uNl8cF4st_p9EsdT#p>SR:S#L(A<rZS!D&fDe/4uZ'p:s7^^rd*^O,^_YJ5GY^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O$:!UV&Y2j7^L6Fr+n2C/)6hUHT#aJ)AF^Ec2o=9n_9RW/7Rujm'd#<[bq^NETIg3+J+>pV2(L]la6Arr>"Wna'GZln:q-_:(J*][/s/n^1u2$Rn\>7@LD/<s8;h]P!0.&Pt`-.GU"8AH4[(HhY:%X8V/64dXg/10/>]_;;fTVH7IQ?.HMB=lZLB=\(iBXf5FL8;]a4$G&ZVYkRU8p[;cl8s%1fZB/(;+G('="EFc3rU8VAls\RS+a`+L.NtbC]uAZ/>enS,9o7_PqL!CRhob1`MYlPU<l4G(g,Yjh)>PK7++EtQIeRG;#Q3Y0Ve4LX@f+mbN:!1A9Q=$E0f59rWP7Sk(/n'PnG$^@^1]qP^Of']8S)dCWHn7,IeW;X..)ul0'h7rHZW*5A14Cc-4^c^USH"12$R*EQSCd%Of,(ud(;BeA0?c&/C>)(EWW&+HhY:%pUAItp[<S):qh8DrR%j`,BloNfm3LufA.9K-5(]$HO3h55:_b_IG_MIk)tb1SW[Y->$?b-@\d9LO.l=:IeW;WY(*d]o&p#C41INI36hI'oiJnTpV2(Lq`=`W/q<=7]7^+`6]Bq&!*+C?^O,^gYJ(`hNQ8_].eJ2Th:]H,j4p'IP=o,Ic=SQfY0#b*)R?ahVR!@JBkNir!%c'X%t=9AIeIHgqqo*ahnApE^&-^#qqo*ahQHkYbZEm:aKE,MOk`#W@WtmaD(V`Brr>RH_RB.?F_,R&S:C&=XP"Ipn$JgdW(:@o]TmTfaeTADb05,YhnApE]omm=FoGYG!8^4i#QBJr^](8-msb$"G#S==r^QY.CAaU*gDuL4]DhkYD<Ui.Fla8E\[O1a/WO(q-=:Q+9j4p3F3+umJh!`7?Io5!r;66'HhY45rVPKcqqe5Xbq%lS>Iuuk2qIboMuNdP:7',TD/<2T%dQcRhGbf"[smA=9gpN]C%>sj3gHjF.;?31@o4[nHhY:%XA=<>msb$"IeW;[p[<S*msat>4u7Rum!k8UO%%\!Imr@pMo/c22e?e\[KgF&>$i8[9VerXo$g=/P*1qE9j'0u\l!"$5C<.>HeXnI2oT+$poUi2g7<AA8'=rP:A_MIjJ%B7e%@FIVu-hBeuISr*<WWrXTTqaBgXUT1;'p7msb$"Al%<tqqo*ahRjrV&,m7FdN?V]B[l^0_M<%'8'S`rKj)0`e.U?^bI78r*L3@tP7cGQf2INtT!!hU>Xp@e!Xbr$`bm_9N_2o629A[ebjYA6FcX>/^Ga0eZ/RhijN_rf[2XIr?D_AQCq;\(BjVso].Rh)@Ap$BQ3eiq.Oj;sjO'3e5m)P`U,R8fUYBc,GX>ElUeA["F.rhGFO*ueJuSPO#^?2KHG045b0/mBb>46B2ER7Gp\2etdbLD"g)Hb\2-J0$nOH$(`PjCW;!kB_J=qdd"10tX.B4KW0pp[0=sscb/7G+&ZqTq+rpB^cP5UH1m>gYm3M$,_1QQ8@H!+!YZ1KIjP#Ge.(n+EV't:C]->)aDd6e'o>*u=)AgFruEcp&MW@N!(&ld@PolhV&]\5?-5Y.YSn>ZI0rTq)l#CXG_msb$"IeW;XNW0!q6iR.Sp?Lj[QAtgUHP^[%<ch]kM6beEYbT?O(h:/;j9>hm=dXqK3mFZc8fl^@ph.QGe"r$n@\4F`l!lrE@__\6Qd+mc<VPg,7G\o=l8lPjA?W&e'\1`Np3Sm0EEKf2KPulRDNse*rr<XkC'oc_hJA---#?8h5te;g"I+0bi01].Go]US)8._)U,2X!^flt.,^ruOptss-S%eW.p-3ou^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY2rrrD"r5P@_l#QFeo?onbr!.E?<ooT1RKf8r2b_u88rr@mgGQ.[3*uD/F[f6?eh2)(2W7h1NlTk45IlKZ=DgMQ!qqUOM2S1c.a5QQQm8oInf2?*uoVg04eCRc$7nZEKY:HD@dn_Hl/AXV7O?La[U8l=9dGq1"2&3Ol<:j.O.7IsNWhi68i`:5%;^AXK#p9WHII^Ajb).gq_,Pn^`k[)/-f;VnO8T0+r9]"&!]U,ZrerIirrDG]m`WB(Rf<AUO8\(0m/I(4]<"6o3;0HQiU5V!dnTiB;s=5]qPW5aqu2/ZrcZ'NJK+Uhrr>M)7t:6[p[@lh^ZK&+!-kER5P-So&,sj;qtl/\J*0NbrD03g!:$2*p[@q_oD.,?!8[isrrE!7>oiqFgIL/9iL9cHR?.=+T'ZIWd(?ADq`+?=mN1cq!1bt(ofeH:!31JEfuO(tJ&i<!^NAB)"SaM%rL*/IHgOS<lE?TT!#YSXYW#!WqWZ/6?+7*t2g0"scar`@1ml"tY/s[BiUAh<MMI4`$)_p)Lsb"3-84?Pnt#bgI<4u6ioa`g?]?"s"1*.uaM*hoHac"4\iT,N$oZemrKjs6H0hofoK1'm[WlfEWYoDZL++EVKHd`6$`4GGmWr-h*ibtK/9"O!1%W^7RZN?aL9;C>EY`]6.OdI]IJ_pPbMN'/b]ggK/)N3J.<X7f08dI+nOKu0<nZ<^Y]AJjI#+Y[Y,cAOLl3Rc\$do\<_0%2Ci/&q6^OMWF;h/-_d,h:&,@[$gHXcf7!=>Pn#1fl]pH,Wn.O:X;PJOc<9UF<]9\1!AOjjZNPe=\OJWG.RH]qnf&PM6<uhKP*EeB$+15/X6sA1s^Zp\V**qNg6P&].rU8_\ne7b0(ZQ<WG0e4#gV^H-Z?g/5DJm)C3:GX;ELGQ!8rRT:\Cor',@-#GUaoG4<3,&[UREWnP]\A98)'S=]K/Qi2tp/;r-?9M5.KEoXeE8'rFQY(_H0B#,u#A^M>(-+oSmL[S.-.\8<PRTJbDuWW9;4P<7'-tM<Q@M$!6Ys2C_=kau-=4j;\!jY]n`DmOu>%q??m!_CWEK)N#VuJ'3atk*X7UdX75A3%JW."W^!u]s$6R8qorpQ.99CHld$[M?RD-I(`/VZ^0?=rY&f4[*;7uIh"D,8=$&)gtbmD9WC@URHSU<PIKd_B`fj(:tX!W2)Iq@R;rrP/B!NR;jk5Ji22"Qra/&"rlHZ2>XIWCF>sC!Z1m^6pA<S@fZimArU8VAn)"%6rrDPd^ZIHccVN[f\oqE!bq;qgrZ=Lrk^Kt+P,HW`g`+7o.^F7frrAeAo$^.?rTB279g)/[crT-ar<5Of!1Z7PJ"P$Tjt'jh^1:k7hU]e#G?+QdO!W>'1.li)Zl*`":L:6X)m5Z'8IM\&ERClk1IT54S:2fN;>SVEe(?\.REin_0<1'K*f^:2e`@8>="r]fY#WmUi2QnJhY"q`:0u;]rU5*jpdWm+aStf"?GQPQh6480iALh,Y+GEqE`(L?2o\W4,mS@3?9/j8j_4A5fZC;NTrGE+Zd4r[TX@2o.CA:9-TC!Cn\*,X5&YAp0!&[6I$\/]@BE0S7d$nKH;;<5P]<!Z.>>W>N&<0;GU8Zi]g\co"\(,Hg\scVgbgh_+kKAIe3:1DQ)^chDu4O`N#k89hi[BareGsro_(4jpV2(L^O,^iL-P8:rrBA%q8N@6Mh1G+rr@O<p%S%Mq/u];ARG"Trr<fR\psJ8mU'N93WB'qXN1:A1*?C[2ns\erl`Wr^OGp]fCC<g6h:6W3B-CiadMrD+%#=#K$8B:,<J\[l_`S:ZZfDfl5eVb9b&H!DS<*+g[t+Mm8L0^@pI7,!$JMqD<(Fqrr=PSraRP6)4Zb-Vc@S_W6"?gG#fM5Sp+drE)4(0G6Lr#j37>c(-<0=,%-G1V#-n+9*i&B[D'u?hqk!<OmE"l)CL4Y/08LO1G"JAhFQ/uq#70mfBMb\p9qg;!5^+5QX)cjGW."ln!]Y]`7/Odfh<IFkfpkrM]aH*4\YVXrfZ'eeJ)k+qgo!n7,flSns973GKGgD!//bt5)U@2=e>*X.:8H!lEJlM1>Q;n`lD0SqHA/a<F'7,Wg]I.HGi.X(e<f\'C5?:Vc2Nj&LKjrcYaUAN>#=+V&GL`7K3?+^7V%D^O%?c,X:6!pg;r^/>pEnS(VB.PdI_[-Y3.4le3fWq3o*L`sm6)FgXpY?JU:GT3?)*OZJ7"8M"10PPu4ENW'_u?1IgQhEY[\J_G`mpBK$AQQ;6fdPOHm]lmrYeJO+c"6s,#Bf@">>d`1+,%tT.A_]f]VCLdDUS#>:L^KNirB"qHpSEAaO+H1;rrACXF'&!@b5SKdFggn!SE0/SnhbVdS%j.*Pf!^jlg<XrA\r?0^GMV'nl&.lUo7@lWf@Fbjb5Rrq(M8F]fmW`4]b^/f#>_sc,c!8geC]]Y1oGH%V.<5S_@;&ONEI-iad&&Sej.\bShAI.FI0PV_*YEi@9g.8tDW@g6'-L;^]p`"KUaO5M"m:%?DS/m%A\Y52,u4hW01UQXApF]=p(F-HlBp?RL&oG&u[[FD`QKZ-g1QFCe.fna!S=FV6upg[r#`q/t)-:M&YQ,GLWc\Y[5VVLl)gVhUro,b#YN!$e,uK=EsDZ*rQ.5473k=[SAd)oX>>.EmiqEGqoR(0@rX2&e]Fh\@IHmCa\='A@g5.D,ZPG4A!XOX;sW8s/Ho*54G9g2qPOqQaWk0ZWa+4%%,?_TL,QNg>_4L7HhY:PYJ&QdO1tS]hYlp"rU8m*rr<F?rrBA$pnRihMLeS'!5G/5IHb>C!"*-6!4&ck?i4!(^\?f-O'j>OrrC%$)ufnQci,u(p[<E:He.f@<U\e`:6FcndeP!>)],8q:MA<thU_&+jBHP4D!ZR^.j%p(1NUGs6rXln\]XhV-CRGZRG1^6&P)*a=1>Th=`p>3mS3YfqS0-jrC6,1S'rf-)f+ip8t$)ZS@20pjdJ5$C3"H=3;?dSKoP2_2<4#j9dM)SI7uJ>OVt06*(LE&Wg@`4$4F/<i-n5kmrm=_!'oCj4(%m#NW0"Y!2Bps^\_^A5MttTJ'>t4nP==XkZua]rLA44rr@$4DuAjsrrB%jJ,N=7hYmHS5i-uP?i.WurrE'!UC3j3qe5m$r%h^O1&h6d;r+)B(NkN5!,!AOrPRI+o;8#VVpYMEohW>Lp\b2>r9]"&!]U,ZrerIirrDG]n)*WZJ'>t4nP==XkZua]rLA6/pCDHI!7%$OqO^:X!7a:3mdNI"4$Ui:q42mlrbB+khk)4o-Z7e@l5d(7H`J*WhRRL\e_,7"F`us5NRtZ/<:WlQNV/gc9%aWm65UEW9^8_;\Q&cj3W;hS!6]HGho@sPh.PHte'NGo@WhATDK]"q=)up\*K?/XUT2T*4SC-='@Phu7Sb5jY9R*g5boqF[Fg%Om9R!jVVoF2.SAKN2G.^diN$%FV5@Xt8pM!QR-&TRR=P-\pV3KL]uU)3T)J#KIk[Ml+CCX'po#8\^\>rj?Y/Qba8M0^aj9ldY3>lchf$&R[V!;6c'JA0[:OjeilgfIrYXMk?Co:U^O,^iHhY:%gWTCDrrBoBYeSE.inhoTPM<i'Eh-Rh)qT+KHj1Cg3od@l1OIuU/W[KKRn"]bb&>PL\7tFoIS'*4Bj(jgY^'Y&&gOd23&-tV^Quq24i[EOkhW`=1U)5s]4:3`bF./<XDZ,4gGYZO\YbF(B</K>AR0KEc/ms(@U<6nFH$thj"&$clHLM,-q)mjf;YC_7?smp2*;O7aHZ0Z*b4/oU1S,8E/Aa*?kKpHqtI_bTDfEer4![T9a*JtO.28L"csY8V#.'a.PT>jWa/1jJrcV)CM@</:^1`p^_L@Tl2b`s?hd>C_fLim.!r#Ub^">MC+H.+ojl_>A%\.1EG<sB<5@TfqO4]UE-UFI=WXKVkl=fH_u<c]7TBBfXIj#/rrA4C^O*!,R6U1u^A?J$>;<d>')\?UIJo8Ie&b`7:\NYqVs7RLP_KI#1`KeO;!o@AZ87okWGUXQ.8RD9eShIfi!(BT,<t-ESZB-e=WPKOT=_>`Yua@%e0eR@r!Zd7ES!\n&nu<3Y*Uf.gGqBdmqiZg7>@]AqPUh'V_Xf?=U]."-QsL?.)4Kd7Ob0LINtChib(K+_$Bc4pUr/j6`[g8V)o'/ofm<[Xi]0XQ*>=pRr<T=NSTJl_X9RtS"P0E1`8DmA9#p(J/*0A)!-V*8D0-UNjbG;A+'o7h:m]mp'06pm/?1Uns)1OagQBs"Sgcl+"'V5Au)Q(WC3%2!/=E]Z:<"%=]c:Ne5O[b4LEWn8HhL7A!S!3UW2Wm<`@*>!/Vcqm0E#/mgm0[qDEc>;uZih:@[f(Mtq,c]AGL#X0ae9h6"nK=m\B*Pc2]A?2_.=jW'PtMl*sQ>-uIWR,$FH#u;m@#?anTZW1FJlD\?;1_c[ZEF7ckr6P*RCR"U$ndfhBB6V?3%o\VSc1R^3R^Y/cn/-IqWQ]M1Ek\GW:.I7OZ&lY:/uDbm8b'&]"1"@d"N.-BmeLXJg^[(kP,:&hNiA/!8N]Ns,qP!m>"DJ)6>fBs&*Xo)^#QfmpZu/Zmsb$"IeW;[p[<S*msb$"IeQQDbie0VG=tk6F;I[575&@enVJmmh/m[eQ$)L&.8I0Gj0:?_]f,E+;+r<>NLq:^kq$>h4>OhCIeW;WbK2#n8L1U_o#iPjP05(+aWuncSk0rZB6RfV,i##@p[<S*_r&0)hn>$J:%>R(HdUUH'D5]#hK4T)5rN>1)JM+c4[T*]WjbGtkVhNK9u#M)<?mS7LBl_Mqqo)U.DM-Lc7#V[>4j4'Bs]+n2BKp)@pF_iXU@_3j.L%@)n)0e)gY-r?f(bMhTD1!I!P/jP`RP5ok*jL2"*,rLF\_.eI2Ue6.KWsG9&0_?n:BFPGT7d)V-gO*rYQarU47bjTj4DY'r7XG!8NZmIqE>B;Nn1,`P]qG';Ye]I)1,O;&=Pk,LE[k_WcN%<<!bkMH1+hX,[I^&-^#qqo*ahnApE^&-^#qqo*ahnA92oAd>NG5SN1Xk--D.^0b;lYKk,nZch=JD!Tn"tI2N`4+K5EYPoA!IJlgG[Jl^n)"$0SU:+GHhY:%pV2(L]r(f0PLjcEqsgDqY&!<]frgb!2->*uFq6"T>I!J&*o38T-ceQq2HH,$?p[4OMPe9`qqo*ah6QqP^O,^iHhY:%pV2(L^O,^iHhY:%pU')Ph3\Y,[5T0#h,t#g>AIs314+d<OdbA[nQ:Z/CTD*p[s;7eK]to/h5mUa&3]pJ^&-ZSIkNubmm!*YX-)8ll"]bC:E;#f40LPP<#;:_]5Yp,0[V,Q4PBY<_NSMFL!8"K'Smrf3;r=&rTpS3pV2(LZ+$RD3HniOCqW:WW&jqY1V>$-0oVtr"%eKf@Q_<C1:rGt;aH)0Q:/>1;GJR(<;=kBIJ_p8qqZd"IjQ8'<ESis531rZF\djirY&MJpLE7lLkL?\-9km>ik2AU`Xgm=ei@-HA++m@mpJ(eIk;1uh-WfPP,dfINTl7rfAt$G^.O</8lZ^fEUET=:"o-%)YFMfPuHrjg^ec+^O$@&+EVa%GPn#sri=4P-iOuAl&R.(k\B(>S`&56<(WV9'NKuF#GdZsK,jMVX_oU<&P+2%hnApE^$`B1:_c5q:]dQq!!'5'%KHUg^&-^#p[?u;n(u.c!:qE7!4!m=cho`qp\sn+?f/QohnA9hn)"$3hYlp"rU8V;5kkN_!+]m8li-qsr?)%%=8Va,HhXjtn)"$3hYlp"rU8VAn)"$3hXpgJrb3JJ?(L0Y!0k\,!.=6BHhY:%pU^A)p[<S*mrlPFRm68BEaSTspQtmIp4'i(pV2(/KAXB>hnA4oQ-%V>ZC*8h8p@8Ujf@]&FnILG4I$Yhob(8):F!J-ZcbJ4`0*\>POIB,n(uuLpV2(L^O,^iHhXd<V>>[fpWmF<I]V09++:Z.7<#/b8Mqe(.j"gM7T272SQ3DY(PncEk*`;QL!YCHA4H=.HhY4s^,::XfH1q+^Cf&O&s6G9WEZq-/OU/jRGIat=O^C6o$YIc2a=cG%]2j%AOr&V-(Ecin(u7n^O,^iHhY)drdCEaO(\Im.3FRLdHou2mgkc`eOPkDF;J9Em9>Ob;c0nY\_c92.MsXCWf(HU2Q7!O9m)X]QRPK@WT(uudFD%a=8la"GMi^$6G%>KpD:nWb,;D:lA_QCC76\Q1sI!X:;bo;YtYqs[dXK/[*[W9.?N"RQAI*RVakYWf,!)6*\A#clGG1f%Eb=Z%oYFj&I_b!I9j?&C*VU776R!jI=^1EJ\4'G[<IA`ljh)&%De4`>LRn9XHc7^E,JCdQ`,53L/TO_WcsnXM<96l$Anm-<)lfem,"5\G4mi]gfs5qmOYg6hHRH@=e4?;P<2o*6SFkNj<eU+l`7&KAs-;nOh\_45ZIhM!4,X(:K9Nb2);i9cKum_aMj`@@s2HoaX$cXZp1q<]KZ;_hYlp"rU8VAn)"$2rVllV2]i(t;s)Et3p>t_ZmrDO>HPU`mu<7r;n"h1'!WRp`N](o2LAiug1lMDV4sG>ft5!**^(rS416IePt6p+kiH/p^\jNa.;utarr=tR_`bK,b$_Yja5,(Lqk()ON]g6(Kh&OlE928?gkKOjl(lGiD8D077=^,)TM!=X1/k^V[+KV<S@7@NQ6PkJj!KMpVKMmYL-Y5r$/iKbWM\S<6Qa/=mse^eImY;iF5O\.hnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^$,e%!"4)P!4#`%5Q:_A!SCcVm\'<UL\rU1ra]BU0DnI)^]+:Ypq;?O\,QFDlpq"Dci3uK#JYW]_>D].fG3l3`"&[E!1Bh;TD4L+DuTBRheLu"rr=.tb5VIZ[r-]`ifDrB?hb:1rr=Y1rrB0Zn)"'<*r`6ic;23%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,e9J&9FEQLFQ`I!')n2=!pGS4?ue!!h`VP+TYV]enKu$]LGN&U#3g`3MqkhE@cqT5N4ZaCBf+_d]>VQEQiGrrD"JIgnVomX:#b?Y/6(j7dK]rikg?["jH]2E$FgoR4?P1^8%!@fo.P,,/_t'MXU]6$Xj=&a`7%M.sF&3dPDe7pi'?,t1%64+;TtWJmIBd(be5hXj//WunQihn>Ppjlu@9!-S2Gq5<c3jf[#.b)2d[m#4DTET*j2"YBPOYAusH^"Jl3:;PtGqqp$$I$Qd'AT8+-XI;^G4db\o^EKr@'`L\rpODT1!4\>4\_^HdSmrd807mHsdB+$j2m1pKONAU=K5'Bs.)W?pNM[4q<-rc)AL,0)W,ba?RT\2%5\st^Y*BT+rbfTs^YsZkp\+^@>N9IAG/i4+Q*BjZH^A79(=V$Mj(@^1F."cYrMdC_oQgDIR\>gnA>@<,1(_bF=C!0Whp[d(mX,N<gA>f6m;/%OB5DJP%NfcZbf(N:UrqV:q"fB@,:,tU)X6Rmol8-0nub-FG\2u1(oN)+OO"h>'T;fo3>=M6rr<7(#N*5E0D"i8@hdhDA,1-<mq6M(`-D:Pm:pom1ZQ_B;i'uuG!>fBjC,(F[&T'sN]s]$<7q]N9$#NLOJ8PIPc:]Vf>$o_q1fKu+,<"3^$usSV!S'U%%UbT:o'd8,2QP$L9`i6/./2oM6]&;'mWf@X$URcWSheZlZCGCc3t0iWhCA+>sS9Z&V!WUR94`)kPUo*ci#Hrr;66'NI/:Ym3IY9m`b+e`LYhAAnGX#ZS=Bank[#jZSO[!]/)N'AnE?WR>omfNQGX*-eVYsmq*g(8&d1+q4I4ZV>`&gmQGS2M;=Ze'sfSg1.q0UH>8WqDW0DsY5i:rgUf+Td8jiL;BiHd5smH.Ytt_@clF@E^.<H<>BFL`;@:+rfmBHGD;rcsm7WIo@eDa/p.N=B<5\+9/N$!a[F>sa8nf+D7?$SF5,0W88WKV`SuuX]07>5Z0.YeL*)V=4rmD=lHi%p_:AE)b?Oa_.FO.qoSAm03Y.@P@i\k*H9Mn5[Q(!hAX$+%8*Y9NbEGmGL='(a1bQ.7q.qY"B?N-CA$.>:jj.B%ga%,gQ#bfrMBsmL.CD<TW.P%<m<hCn4aS>+bAiCc?U8&l9+TDF'=&U@D!,L8q`m@ZDkUCNDX/64p<[@[HDI,fAe`CgSO6)5mmq*Bg]C'UPHhY:%pV2(MA,cN_YPTufS6u'$+!ppep[iB2IkP/q?hRM"!%5PO@CrH;!.I])p/(@QnTrE/g=%5F!4d/tpTf;8]_cL=msd^Npd:tWb.m'brr@lXj,a32S\OW3?hd;Rr-4herrDQUl/2Hgp(t!KW;ckU2KSk%d/O*s\t=HG^$!)+rJWr=n)"$3hYll+rrA\;o&n_6bZjmapHI+HEgFJQqFbSk?L@OP\=oZ2D@D!lfpI&+=\Y0AW/j@8NU<:OMjFTG9[%419_=TfNAVG4-#%ie%u6X(jqkq\aMA9I'j[NaGV%HYFS90)IjS?_F`"d4jK#`>*3!XUMgo1aAAue$'+(76HA5?E1dt<3cNb50#?M[kC?]5kY(c7e=e\g]&tc=qPZ!0_/j]>bn)"%%rr-u1b1FCTaUHVHb7sG=,SS!<9aoC\7k?F8_;gh1&?EhsDP4$3#U8<d3965?&m1^aQ7#f[Ou?j63>$lgUT"Z^Mua&#KC?$8+G)l`i/S'fkX#3^rU9,^r0MkAANk><!%a1f?R*$L8[@0)TBhWG4&7"UZdr[!40%lI5.'2"lLe[T'is_Gm:XXV!34)$>pQP/qGmOq/^KP:h^SO<F9cgK.h-spbA?.GpXNN-bu%WW[O+>MAaWg*:h<OgkOM_%aQXL;Q"shtO0`-"EfHI@ptGN_<::'LTo[a(.G:]_F8ZNN*j>7+hn@_kZc2<!n)"%WTCB:Mq_,.15PV/krrDrlqa]M/?gsp'q^V#frrC#aMuNd+7elZYG0g(mEPM4KrrD)ZO+-i#(VO`MKjO`Ghu<\<5Q/;hq0RVNJ&Hj)M`pLFrrA;`!<'QCi]$i_S:CP'o"NWN1]BS.-iHN<r<WE$n*KZ7kmQk-qtIjPpV2(L^O,^iHhY:%pV2(L^O,^iHhXgsr5*sMJUVS<!90Z!QN$sB0ti"%YEp@)8j=[fnQri&rr@J]jn@Arrr@s8>Q30<rrDqS0>Dl/@se#tHRN5!n)"$3hYlp/GQ.XL5lUhn-%'_4!5ng:j@B4L!$1UukQ1U85OI.[3WB)7B5deMn'BegbdUi,a/)*%!%k7dpG-Z9pTa2!OS69[msb$"IeW;W49#;tb5VI.2UgL<%G/A=T3uO6IOh]bPB(NsV!lJ(I1fIQ]fNWLeYXRp2_O$eKlkl-3r=?I9o,[3e4i(9i=SX37mfi\CD$RH$9%['JD;/H[!lY)4A@+3o'?5!,HpuJY*,2]PB-#,bttqKTpj.t)VUr2['r]EO+Gpi-)JfKG:?/d-qE!9.-71U4UN[b9-R;80GZFmb]H,qOnErG+\1UKqX=a)Hhk_Ze!nu+n(u%pO1jGbr\Shs:jdu_)ZKfr]n=b(OgDY]B[jZ<[*P5pRHbdb*>V7,,`1gUq)>&FC>*]UFYo9''7u7[Lj_kJgS^m[8$>!uACZ+"mH[L.[s,RDR@6DLAG4k\QRbj+=Ksu*5!$*N]JVC,VJ:At2?d38.Yb6FI:Y!Q3R]i36rag?D6>5r's7-u[>=a5DgqHT;<cBQgO7u/?!#i$3aY(tmI%I9rLpW3ng(qd\%hXV06Q47o#:`(jMkc*3e4PCj58@)Y.)+aZ[2LXG"1;ObI@?RB'kTHJsTZ_jMPlZ,n>8>-FEk]>nqZ)NXrIG92Q^82*Fo.nPm=>6tbh1k)En=a7WISrTm&JZM1!K^&-^#qq)#AJ%`*/)nJ7^p>/h0lK?pseYh0SW>L]V>H]V.A%(eVKd'=%QR,Ih;TX*>Ou['^T_nJuHhY3$[r1Ne46ptU%Hk>YPrZP&\h`sSh!S@JPgidr13G?P<`HRt8E14;LIrblENPKk:]U7)HhXoA^O,^iHa_hnX7-IWjAgU+_:u=3J*:fgA6OTnK+cEqrJe>NSi3[JH/d4N]1WT]'llY2[7sSE,Eqi$6MoZRqqfZo9HG-i@WD/P]8=PcY]uU=W,['04Uj;.(QP8AFMga=5t;nO[']?V$Ab^WqKqtOHhY!FIeW;[p>;.Rij7:kgbs3kO3HT=<:WptEEQHpClUEfQ;OM_C>'TIk,#)UQ$?i%=]g)B^O,^iHc:TQiO6`B'=Tmf/qXCZ_.0G6(gJsOQ5U`\.i48ENg>GB5t=\,"Z7SP1eNn)!33%!*rYQarU&4o^&-^#qqo*ahnApE^&-^#QLC02^cE_#GA[%Y2'SA?LYA#<rN@?*7k!3JNT8dJ@RsIIjJJ+uPD5d]4^Jt2Y+QOOp[<S*UkpCSAgNk%/B!]C-KL>8,bKP[msasYloq\sDiLCEHb,(pN>GN0Hp6r"0h0G7P:tR81M4Tug/YNEU"hM*A=ET?)k6BdhYlp"_V]h:msb"E^WJpR7pGnjU"Ruh64=BEmHfkWSRl9;na8FA4+h<K2Nr2\2,6>_Hor"A,&RYN?[MO^HeRrG^&-^#qqo*ahnApE^&-^#qqo*ahn@Kgo:54u]q*Pt0<&qkD,"0f]:sVQfT#i.m2_"i)(MX8!g)rSB'%.oj:$9TVNEDqCO=sPqqeUWrU8VAlpBuT]$#9[B5AWo_7,IS^@u4MCf=<#RV:n$/RJZ5:/6&aQ("$U9(,V/LpU#<^O,^iHel`?\r1'??X@TpZKo^s(k&s(.&3\*OiAn,Q/r\SL3#(GMQL0Pb>]pVU1WMSfEF]D?[MO^HP:i)hnApE^&-^#qq<J[j']j?gU#nmqg'=$Hkf-(Rs@AZV2'$>i+f9*.j`0bjJ%V`.k-0A1(o1:jtMKcWj;p(^O,^_YJ5GY^O,^iHhY:%,Q@bfMuLe]^H_5FgY_n`D1@$/msb#.rrBf\pV2(L^O,^iHeee^(]BK"a05D2oRHb/?glkMn(u=p^O,^iHhY:%pV2(L^O,^iHdhupq4rMnG'BSX;_S+@]m]A+rU8V/rrCriqqo*A#P)^2!4'/WJ)VR,?i.Igrr)<BrU4J3IeW;[p[eCbp[<S*msb$"IeW;[p[<S*ms@cY.IW/Dh*KLeG=Lf9Wcg=BA*L9U%9!NI>C3L.d]7:rTJ!(7PB5t^X[,F`Ye:r1LOe:=rU8V1S):pVhnAp>/b1j8qTn017!?nthW)m6hWl5NfX^t\!5*>\7($C=n2+$BN-6\7;Ed`:S#[.KA#U\:>0?,dTSs\L5n/1%[WY_?ok+3k5/kX&7`jtEYEn"6MRQ->J$Hsk4Mm,1T'Fjo>b+,PC-$M9b)30nM#h5kge-kcI!$H(F]7M%V1n&s^8FR2ku%DWF2F!;,S,@unONRe^H+H#q2Tj2m>mPRa&=6dXo4VDqbLnE>qKq1XSUfadaIK2\(cl3;arKg@h)LMR3@-e3=0G9k"iOgR@E?4o(1rZ@!ou_rVPK#M`\tBh0BYD")k#7eDk^Qc,VWV[Pi"CZ9j.u$'$-",0(S&X*L_@?Sq<d<&9r"SF0.M,ue^0255mGV*#(&0IP>u)Z<BbVBha)p[;XffkC*.n)"$3hYlp"rU8VAn(u&;O50uoT.)joY.d,B7`rnt(MrfJk+LFt1MYn/;a#"f\]L/?\uo(oM[b6T;+E3M9-[L`1g&H=H)dlUM?p#?6r'TDI_kJ:aP$MbeXL<gGAlmCR\dgebSE2>P,>O]M3=U5U-b*slrH08*i?6KGE/,POsqcHdO<q)W[]L"NEd/sE4#9q1'lm!I\i+TYrj3Q\Rm`,TTd1cmselojTYRdHI)CbHop%H*ql)_pEsP7Ul0SIJaFpJBk!R;HWq^^:BjRkMFttLYCgERH>$4pJY[CD77.<O8;1VTA<Qm/^R).@*L6+Qj1aF949JFBGHONtgtfBPBqUS6hL"grQ5HZ7VL!nfW4(Om(tOT[:<O`>Q7jb]W1K^<dd<%/:U`&u;+7>H*n&Wh!,k_4ao`6&&JSVe6,eAhe=6?kV0b>]e3<j"hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU39Apfl)CP/kE=!;oq/_Z'VnFU,Tj5N,>Oo-4/gJ)XVerrDr:`U"l;^\G9I5O(.VqTqD&hp)bhS)1raIeFn,2uLoq[/U-EJ[9k#UW313llZ$%p/h56]6!uPG8,Mtdf0<_RXb-O(]A/WIeWTHp[r%iEddiB^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qq5<OWUWWa^2\O#mlu[mW<0NRm`gBMg/I'$1j*qF@m!.^/Y0S[FRl_+->R+/q?e4U&9FMp;+;Jh80EE(:57I%!%3(;ZoT"O6k8&>]r>@hQEW]@'B(^E7:tB2ZnXWl5"f^0)G47g0Opp)9VJVu*o$7qkVDqub\]oLWjl4Vf"$e?!)ujpipR;U(k7A9msbm$qWU`On[lCpA"YnV(>*NCl(5cJ]kb8o1sR4;p<Uua@4S?+,cHHh9"[lGP^d[C:_4pI,dGLY7oFeGh5f+rYGSofIs![FTkno@l]'_mfpdk_9VODemHg*-19,(jRQ-mb$E'fmdnQVhcoO_,<X7;KXe_D;Y,7)MFAGOl[.:CYf+XApD?\RmE.9+)IeFEO5^SLZhYs@dn;uP""6@5fpr`M8hH?\Wm4X.IM@HJCNiI;NQ;aN%o_E@?eeRQCb[.8l[T]"R[t6qu.P,Hr*09BQ95col!"&2k>!&eE7<_/f4IE,*58j&)?msHK=fX'a[rol$QJ!!AV3&(MK<KnRL^P,SVPBl\<ouYL`-%AYn*l<sQ1%Y.O@5b6;c1bAl._EJNJ",N790?$rU3^Hpf1tu(k^t[o+K.:VSUOW!#+T=K[fhcSD3V_<P8+/_;!Lc$<b!YFjhPUeGfO0g&+8[gIFNP1ja=>N)FY1)ZG)u0d?EDo)>tt2Ps:=HHY>:3F9;8]fe_U6'gjUMRXqum.;bI_tt<fI6JNO5nYLdb,eW@lo=?Jkf[TWOr)Y?M%<4E2cm"1%:"PU_l/Xq5elL>^$?@"Oo:'lrU8s(rr<>Xr`NlKCgOsWB76hhiVk^f&EZ$+ir9#K.TDS+*O5,PC$7X"Z8&(ujB*bb)kRhVG)E.A'gu$RXJBC6(#H(,J)NE&$4[;VDVpq1mgUB//`e$DYBiG%?riSSCh)emV!JQP6mY>88Y"&PXra$R.5F1V>b&c3aPk[]J&MinJu19*TJ\Vl:uu+d,,TLmi5m2,"ES-m_>!DFgO%X]fYR%5rU8VAn)"$3hYlp"rYYY8bU`\9n)kMd/dKLJrV[\ehojX5fDUtaam].0DX%0$hikU!PW\.,?F(aI[)dab>i,GGTDL9*gAUp+d.@5Jl2L`=YPF$)i^!;!rrB^pDu8;@rY#b@!$3N2rrDsYH?]AhFT$p[DsBR^%@mFuQLmE7Y,C0jms4A9^LIehHhY:%pV2(L^O,^iHh]`$T%I#u=7TGR2crpSXu_WH43P(@'dc'hJlJG@g&(Y2\"KL!BiQUY>$/&G"%E>G>H"sCr3-"0C;[;<UUR[#2*0.6m,$+Hqc9;N?7?YU*PK&TfSHNWi!Tpo#t>UC!DU)affR8A.C']<i+Wa'<5K>Okn-VQ"igi$IJ_Y9lnA)DhnAtQrrD!o48-.'rr=T&kh/u-el3^%q3Sk\nD[Xj3^(0fHCLc&nBb%=<(S:T2^FepM,6\^A+!?JAnSR@^[R_0f2J(36eNDnY$-ZWchSTn+iam?BrUV?c%FUCB^'6QRG9dG]l_[N6p]s5$SsZ!+&u!FgXT.U-c)(<0D#Ps2'[W3qY:L@p-/HDDkD@_q\+DThoui6(=E-^AbGR`rr<c8TDnn@5A9rBbPi3lrr?V9d(f@Z;1J&Uh]BR.g&D&1c8YaQTDWh/n)!]RpT<V_X5CVFrrDTprrBOMIkPa<:\^"Ld:^/F?h0ih!4Rpb7fNJ,Z]G+dh-O1:T4WSndtI`$W7CnJTc`1*rLSH9+aofOIeW;[p[<S*msb$"IeW;[p[<S*msb$"IeHT&Qr![B0?t[;<"G/LqrTi@ZM!eKrlI[kkPd!`FFWbggqMN!?h%aOJ(h3Crr@%Mp[<S?DgsE9AIID/qqo*ahnAu+rrD"++84d!N^*;gr.t@QhrDF6r;]'DVu=4hVa'\;mJd1bq>6f;QKsV,oVb"9[<MW4:%-s44nit<f3\FEhYlp"rU-G1T2*JHp(-_9raD06_T()i*ut#MpOl0RP:uH$Z`M.>7Lar<;bFnqc#$'nN``B#"#<E?`mstaeTT1ImJ^C@0(E'EL'g\HcL,A``psYSfi8_Jb8<RAck,4`JV^@A+WAR)^aR=,isO,?o4[#MTU'$*rD_lk:WWObA)Fut?@Db,I?dTWp[<S*msb$)HN$2Lep[MpRt$d5G,D".VFhA[pjJC4<5t%kY][Bq4kEZ?lER[pVkg0CW>$q4:D,/h#p=X>J!C6"QZ`<./oQR!8Yq_cV<Vl?g(,qg3lSE\H!R$F5uj9hWSkTDEM':$TTBI)fr<YfRC9O9aX5M/(Hc[>490l4"EsP.G5^jGrMfbmhnApE^$E<.m!G==h9FK@#E>g'Yef@4m*4-V'Uk_f0p\!/!OX,M5X0.e'8r^.aoOWFP#H:qrU8VAmYH;ghnAp@a0.BjCU3]sc0NWb(md=tpHB+&ie&bg8R%_+e)R-nUW0CW8PIYU8Y4L(OdOc&IJ_p8qqgmL?.V/VW4MG0oq'O+8j0elYS7ooFD?@JFejg#S:st$Gq8HNN?q:mKU.puB6GQ*55js,rU"t#hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"k\L"JG6t(\oe/^CWf#&hXf^sWdnYi6`]k6H>B=Ju-B_\=C>/NSXGj$ujJ%XI6k)?Smsb#7-bk$&^O*`AjbNB*2tt5YPZ@Mt=N+Wp;<E2NDTbq/9JlWVD.Ei41J99k[#q6Sh!NAYq6?U&+\0:opV2'JWiBfk.[l5Ua<d^aUn1b)WbKkTSt;Y_)CaU52Z_s).8[&o!.lbMqqo*agZHi<=cJEQG/!Y(o`gUCZo8I6F5^k"?to2A*/ujT+"bm*XW:Ck'4MEaqqo*ahY"R/]eOqrYkDF3i6V:UhYU@T].p<r=^!j<_2G/4;o9l:!h#^AW$Cd_l9PF?n)"$3hUWbHn)"$3hYlp"rU8VAn)"$3>-I+/>uN+po_p`0-B=:iWb\8^_U6lo2g/d?\O$)K=L!qirr<2rmsb$"FK+`crU8UhDt;/B)[FY@LO?-Hd^Dqs_\&!7;j+*FD<4QK:fN(Lo('R1I1$Sq`ub3JhYln_5CW@qIeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S)8,iRW(]BIDIXg=k\%h[IgA_'>hYln;rr@NBmsb$"IeW;[pUUUF0Dcu$O'h[Ckl1YW3ksRcqqo)W%t=9AIeW;[p[<S*msb$"IeTc?!:rb]!4(t[5Q%Bcqr`;&hnApE^"<8a^O,^iHaXIGg&D%`F-?P'`':oLpNNtBqqo*ahUEVFn)"$3kPkPNhYlp"rU8VAn(u9L`(lR^+T=h&G?3$0YD(5=)"JWJijtNNL>IMup?#^>eS1k]`8dYjL-oo0-]A&DKg,8"IeUHK4ZtqK4;=$A6VC'F$rllKeF=duo^qVs`=*;F'!-&i$u-MW5ZLV\(AI9Hp[<C@qqo*ahnA6Krr<F!q<M=n]$m<:QY+7`2(`0O9R]6NeK#Z&,kW)]B]^VYFU$L>`0/3jicc1<!68Y,'#u1c;Qjn5aGdpE)Rk45P<N!ri&4q@Hp??\;[#YhOS7"8do4Jk/A"i!jBiqZQqGHN7qlWlqm)6o+X/t@=n%ZWV1E"Trmo;\WT^R*]o>V\g;"4G#b+O>Cd0EqlHT=@A)Futm="7#ljrjZIeW;[p[<S*msb$"@Rj7;#A<f2!,(YYQg&p\\2tqBq]g&WD1.VRG.ePjk-Ol`p-'sPGcm.We'l0p4\\W='eLFW;GTE;_]4ghbHEtuHhPJRgDt4`qdV4j\(:,n;df=Eftl,UXHm':<)/6X9<<,#'Pc(@1oud;^lL%LOe]FK91r,d;%4fs00N"s,DI&Sh;%u7huGb_fDmOKp[<T5^Z5_!Lc.KgV<XE7%c=,:qsW\qB]73"rrCpngZ<Dq9sgrq/Q-]j!*j'7;$5:KoZ9"</IYIi>.IZ[01SZ/?[Y0#48c1'a2$McgZ,N2_=!qZqr]!Yh4(!np"94qJ>k4t]m6r"-<1K^b6l@VYDjcCKh)f-eBgNaa6^L1%c!rYMP2$CHA/`t0<&Z\2EtsZ+2u4TKs`#l"5gfYC[U3\Y'p3)^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApDOFQc/TDKpqKDtrHYT8Gt!5@_/HH:TQRt'Qhr*o[+`3[)U!;DP4fLahInSZ9pe85-boq6[+^RQCZ2nacKrTlf7Du#imC&\0i"(qQ5mmiB2Xk5l.rTp`c4*KfdmO8%sV>gOH2#dRHhCn`X^A[NhEUW25m,\'<^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^RZbM/A(^qrr@'9;li3OIp-6-HZ-DYKljfFhr44b[mSjGD[S5p/Dlj+'$2<rq<U4#\2p&8a%oJ`h4[KKp"lf6J)Nm>%6qHDlXYClfm'V9DSu>][dGfULXAc.nCZ@lipNh])RKGD^QWEmUrH1\BSIrioW*$b=!2^$i-[Brq>,43\udfSg.0Sc2#dP&RB?Jh*FV9fr<@uRT76O0(VO.'KHC*[_uB_&\+:m6&*8T%rI`oh)'j7c3t%_YCS\78'iek7NZ%T:h07N+_uiY9P2n[QZZ14q_$j`alQaHn7HT1_\R\WenAFC$B7(oiNSW8N?Kie4GBH[\!:)\g=m,;'a"HSnZYb-0@g,KH=0hS&%Q>sXBi_0)8L_<7,t#1i^h9\@oj%03S@nJo1lS6_?=a#&IYR!VTi(4Q$:Vr4qqZX"e^[aO<7b2Ne5k1%e4j"I=][GF2-"d!1,RMr2)Q%'brnJd3HoZnR>E2PI?]&8M<a8qWiC?EC8tm/U8Ff^8"+a\k&uo%kF+kS-(7sRZSN6<`0,'+OHRPg&kO@3:!"cG8N`/3^O%tjbJW:7@=KugR/Iuo,H_H>Gs9a6Oji_mbM[[12EtO+l)2l$(AFu;1d4(3['@#[_%_S,AS?[\>KJo-A%j+6C#.Z"5"5."a8MH5R^[]XdN$PJ`6uK12NBC-Ene3IeQH'=(i@#X4L$,r'bqo@'^M#MFi!'Mc=JEoOBaY2[ZX9g6NR>\b^U_D&s>JYYl+Cm^UD`fo`nh$J*L@LkmjWG[!PTNHCnd9h1N!km0Y%'Mqa_2),H.0_X=@WWj5/EKU!8_H"q(7jcHg\1&>DQa'S-SVV!shXEG@#T)l7k(>HcE9s]YP<EQ2=pdurJ.&1BS;a!K:#^N7^][F,WjKfInSLlZ4<7"NA+GpM>Or.#D(-'enO7>+JT?6ir@UHOH]`.luhYlp"rU8VAn)"$3iK*oR^[/]6EI[!+I$aj5hpK,cr4RPbJ([p$T)Sf0L@1]4q)aqr6dC2#lS8D>CJ9N_jj!8Nao;@HoBia=^&8I+i=;LO.fTL9Qi86@N^*EdG5hQU]mnuphso]R^]+;O\#4`M:Y9!nrhKJnJD&9EDaXO)>3^P5hY3W8S+\Q5pV2(L^O,^fEm#./90Ddc$kUGLbquT.`=u1KGpSbH+X<"("LA^@!pAGI,`X;0=^<801he4u7L:&STIfO!`$urZ\L2njpmZ;K"-QI?hnAq-r^_2H*P(_c^:RR;VFoQ[cL-_@lmd>'TSAb9\2U;[cL+6'AYuAc)L?ZVO!Ga@6rZKhTE#53Q/?WMkdpr+qcA5644M0]]-i!okc/0N3$+eGagpu1R-/^&8E,?b>0t5g<E,Ff#9M";I,_$7[\Op1U9:A4_uXj/cQG+]!rBV-fIuSLpClGtrBL;^i>4Q_[r-[H0'M0"n5`JZ`VGk8l7h@)$9HGF[CVj(n.=4!X&I%`89Z>)>'X@E,\QM05ZUt#n%\@]D5gHhpd<^RQED]nNpuib]-bQ9/1ISR(d3N&pmC?G_1`l>bb]D:0R#nC:]dr1bTBhOA)#O3YTqJZS?MQ6*Ao#B3;WFQ&,%(Cmr+hF$2YBaqqoX3rYEo]!+kin8,iQ(!h]JmIm7WDd`_V(_>aLH?-p@]Y>Kf<aPS&S:>,XIMp=9\eXub^;=EB6_Y:1qYcHZpg]%9E#QFe5aaYs^r(m*KrR#8kfO+3ArrBNer'p\d`3YO)!8Us_g7Mu,a4#_A!3"HJ!21Ll^&=ONr?6TXT76P'IeW;[p[<S*msb$"IeW;[p[<S*msat,5F>7FO>"m$r)=2ihtuOpYHmilj8R.jjQHLmf5uN2\(n^P1LKZabCA6O^]+:RAbYYC$u^VK:Lspk^&-^#qqo*cDZ9^q-m/0DYDtjBJ,G-&!8lhN4oG@FOJi&h4/Y=4m-XfQrV?>_fp:rbq"1LLjgB=3k"Y=$p-&.j*nO`sn)"$3hYll9rrA[GrknE<no4S:>DkKe1!sN\4RO5B"&DfD;!'iD.>I-T]c,%&RoIi(%HC-ea'n+lXEp46TjL%/CN\[GBCb<_FdL6-Bh_a[3IRk=Q=0ibNr6'#ChuFn1!-FcbAJ^C'#VfO-.c1jRGLjo51e&kg<Du1,3Ia^Q<JCma--"O&'r";pqQ_%])*tkrU8VAn)"$3m</>lqNE5QrrC2cq1&(oAr$.fAs_O">40&K/ZDGZ7Q3!R=HV9>9RV=>"aI>;<Vs?uWq?fjV'IFPn*+E][Isc:=SrI"RC"_K^LNFZUpal^,=9`qBkXdkc@Bh*l:Ru\%$f>m>Ck4Lnn(oMPO-q=8nOjQGZYr"EK@#[f%)>BVk''5oh*ZbrrA+pHaE0RHeO,0^&-^#qqdZH4ZE;pPOeUbG6?>5RX,G;OP./+$sEhTC`)*`FMDS".'QYZ&Xr#o,Ke@*E_jCGhn>7MIeW;[pLle6-a+]M^Fuj;qR?[X]jn?,?M7_M#D;f29QYV?)QXn,kDE!boauXQl1L';j50b'hY+_Ymsb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<E>IkVAf*RF<&[l5lb=KB8Go=s'DZLQ!^VZ%%1,8^M]73Es`-=8>t<F2Qr5B]T%YTEQ-IeHK$/4-9dbWo/.P"@P3!QcVapV2(L^#2()ofD_pa*scK#,W*F%C<AqT?#mk7CQT25'qI^TWfU6/lJX.:Sa"H^O,^iHdtdbL%S7<+o-?;(cltm"s7ku^X=/*9R\B/*PUPQJu0GW_Q'Fb2`XrB7Y,t;.BGKMrU8VAm$7JB^O,^gWIL-;E/qa/__5BKeHrRQ1V)gppkbBNkA"m+-es&`Wb*OQ"_@EI.$sfc:oO5;pV2(L]3G$uIeW;[p[<S*msb$"IeW;Wn:*P0O&lhUkaonR-^'60JDFEN[WU/2UoVCDBX?@$V8)Duj<;iM)"$Ts9_[Hu^O,^iH_KnWp[<S)WS%*kE-:%.g=u46<h+X#g"H:(jMBDL\jM\!f#(caAr&4!l(1uYb7QdHN3Y=kM"g@ep[<I%Hs6>9f3^"Rh]KOTAjVrY4&&F@#5?eKe>)07DK\S'9h/=m#qYkoR::?5X]=mk69*F<b7oF"msatArVPKcqqo*ahnApE^&-^#qqo*ahnApE^&-^#qq3(jA7,$uSb`9cLAp'0!8caOqtIjPpUrNaqqo*ahnApE^&-[M*rs(BNIF$?i]j4<!8Ql>!.O\2IeI_Dqqo*ahnApE^&-^#qqo*ahOjfJbp352Zb6;<nsP!rSa5`np[<S*?iL#mhYllp5EfaYQ-N&&!"f/#rrCm3chHmWp[<H*HhY:%pV3@#!5EmT^O,^iHhY:%]FX(_fC@r!5IpYLU7IeNUU'AN6Q\.IhA*'Ifnt`Z>`_$dC7qBU@2Q,h7o2LUEN@spn)!b'p[<S*msb$"IeW;[p[PQh!/1s]OfeF>r8IWjDM):B?3@;+1/Erm7[(n>Ur?e(%YC%KZOl/%(;1brI,HdU;KXb%q&(&dKiEH^J",>9eG!nQ&c!rI2/c?Kfj!"<LMt#18P_^7lC(7%<^o+s"g:^`h"[t)H/sT0A!O?]!F+Frk97DlZ>-sLch9((W)]So#7LM?1-9ughYll-4k?gDT>,aI^O,^iHa(9Hl27]5AcD`d^<U&qpp&B"RES\eZB>[ogRF]#pAY+eolVQZ7R^qah^45`SdNA/k%HJ+&Qe-GU5dliMK'Vi:#ElbK7>,[DJsO$\gq:?AEYGAC#[rsJXc8jHL#(ic;9CXcah:X6o!2Y=NM9]/9P)fW7@=DBgO_EbT>T_mL#!Z3h3LT!c"\ePdKBJAt$X?DF1:7,NoZQHhs63!%5PBBCTp98F.R.[:>9,IS]CE3m`%gaSjA<V4u46do6ZWX*/Dc@D'#*kkhO%AKj[pWDQT$OHij=lD_^Dd8OsTr4G7ZpI>&\g4lX2WRsAkT#V14mG*!"F;3CWiKqA,:>FNim<)dl/YFR9="l2S<E7,6l=Z>,0u@BX^<jo;W,EdR:-qsg7=9mnODITe-/66>a3s%RqNJn3md7^@O0rW8HhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2('&,m@9rr?T7n:1H<('CeUpYA.(=V(:+Du@\kN*l@GGCTV^nTtR(DuM?@O8=j.rj32bp[a%3VY@;Fhn?%u/nU/^Dge1dEWTjG_!\><RB@7fZ;_`)?=&Z'Ud5q^CF$n:)bQDm>/K=cmJC[0WUTeWDIr+OL6E@D`+5m$.NVMa6]e4GQpcnS*^^o;80e7d,MlO-7l4+$oVAb(>O,j>9u"]chnAtVJ*8X`jWFL&4Qjof!<!R8-iX1TpV#R9kT_22rVljYIuqGA/p>S@!,N`h'E'@sTCj'dr8ik:!31JEhnSA1:ZW\u!'KGfrrE!2>:9FN[eIOdcpg7Cqu1^;!$Qja>j\0_fKT95Pd\p7N1^)i`W#qg55js-oGK%IO8f3OF63E%re[b@rrCf#hnSA"+6EJ$!'5Uk^\TR+ci3u]++F4i8m>s,7Sj$a3F`!glCWP"EIZ.nq60^&rbL7-Z[3)>r<I(6@!\Gg@Q&,f:=IpAIA`0j0:KeeDN1o#pjLW&A#l@=BLBDR'.`PdNd]QP_QTQE+7mrsmqpn.oUG-0'sMcSrOJG(omk*@.c2D4a#6\`W$04EF/`#3.@8Q.nW;O.rI(\")j;;Q+fM"S.KWO@Yt=[%/5<+q=OIsV!>bFuG%L%+H[keYIeW;[p[<S*msb$"AM`LN`(n#Aj7+5*4sbAm7ip@ONJE\OPkgM8Q'E:UG1/Q6SVOrLeBZ.!AMu16`_^6Gd?l2bd=ckA0H_1S:QLu8j\NqreE@q>W0g?$g9m;mE[CshRr;ruB_"5dFO@tE<_Db_\S.rmiDN"SdtMS<0J0hoA/UnKAi?F^h-;NKCL"h$ZbnPZb<mb[&+L_>n)>AE>qsu=*;br,H5F"DP&8Lel0\;X3p1kKS@cg3\Fu4pWst4K<A,=Y^DBg3+e"Fj#E#[M8EPkqFXQ<Gg&5j$\pL]kcW+oMA)[0[?1+fVcJ7(7/BL\T^gnh4ef&7j,8F06929#qSO\]b*@*sOJL)eOP'S%HMCOk\e5FO:'/0!&R%mdRWC[m2kXRi8lmqd`pD`#'qqo*ahnAtD5N*]Vb;9(tr*eDGbT!mm;8LsN/*R!5]=gEE6BB0Ng4(1;hJ/]XP^pu?e5AlmgVXr;`CcAe&W"EU7/AB8*S(/iiB4j^J'gbWk<<*gHs/tQHg7*q5@-i]:St`)e9GeoU.XXnMR(^G@."pV<'^\!a5cAqNO6p]+*ts.p/q,H<=*E1OO6`=HD7*mc_t35pJS/tnPrIN^A[MA%so;n'`Ipd^&-^#qqo*ahnApE^&-^#qqo:5q1X=OIJi+)!6)bL0E2$eUO)h5HMkAS!4&g(4oYM?%Ga8GnolamLReAEMq2D;esR'IbF@D&PQ(VokM'@YHhne5_Atl'<W<%R0Dn?_*.R^QmJd05HN*u^@DCj@q1&DELMorf!:HJ`]oDt\rr<)+TCUiorjC8QpV$#Ym5OB?p[<S*msb$"HN&E2N5(esao5Tg!BVrLiHJQ95:=0>m2aC">oC#JEYPRc0iYcc),l.D]tYj"Be$'c4a2I[RH^aj-AkLhe26&S,\ZIMq8@[=gKtN+-gs_E2a'eUGB[ZVc#rb^?n#jK)9N4@Zr:H.04@!qhKj!=d)B!Ud*rod2p068&(01,07<1)Y]s?-dT%.lpnXd^N%jfNO\/8FVs4lt-H=Wf<.98mhoI>*cX5@8p[<ANL0BFCJdA0DH/qM)L(n>JRTUIQECCcMGpJO)"],LNfR)d$E_R`H&j3JBlPsoaXR\q-YZ+"Z"eFJ*!!.+gp&QE=#pe.(aX$fb+4oD`rNAGLB>^b<J\TAmi`F.5_2iDEr7`6-%d`RD3L2I&7G>GMPfWQ*@,^D678LO4YISj^pkWHCrN-2p4Xp]OV4[>@q!1lK>N&pSoYt'rd;H$4bE"m%WMBl9.C\1/Y,pKL[iJ<qWqjpN24g-V)kMEkOcQ.Vc$n6_S2LHe5jP:\l,8herC'FJ2+6_*kJnj%8,+M,mri^;m<_ZVpV3.Er%4]CbNn/Kr[J(9rr.AopSF5S.>.WB]:j`E?D@H"hiYW9J=X%H!#M/DrMr0XlD*7Ml%SS1cXBniHU!#&e)\8LHoV+6*u'0"p=pUMVldO;[-0H7n:PCa.<@S>>X^P,.7YT@Z$!T.73ue`QE`!(<5PG<ea1oc)"*ren^lmC6[+"Z!08oobj0-=8\"L'>C)/8NbS%Q;--]-j/?^.1%8/lGq'TPdmbp<ID'LOpb@',DF18B@&0b7as'[QBaVc+V3DX7rC=VLqB1:7A=q"/rcuhVrrDmB[SQo'D=;h!J'^YLbPV9\rr=3loN^dUrn'ESrrD\f[XZe;rrDYV0E.sFmsb9:TZKE_J,Jo10E2%E9l-I$gYVo/!'qJ%!&*g:e,4q"!7>krJ,<XNp\IeB5O("Rq9'TS!*&ji^OOU@T?9CtH-_iW!;\%N:]CE3msb9:TT"Aep\a:T6N7&L\_B@IY^QEI.;b^M)*e&\MuNdWIJ_juHk#njdiZe8j%dnq=jRkpg5i<o``mZGYdF@_K:ptgV(216kK3*RafWMA1L#Hk#[8a7PetUCjl.c..4%EeHrg&+f)G_(H<Y:]a&>:7C%b$ZYM;,(Cg4Lf8VbSC7bZ,<i%cXVJr:qAVi!C8TTI/]lrlI`!B(<J5$jF55o*(K8h&n:<<UAfP4;)j4k3]NodR@7:O`"WI@-XET)J#KIk[Ml+CCX'po#8\^\>rj?Y/Qba8M0^aj9ldY3>lchf$&R[V!;6c'JA0[:OjeilgfIrYXMk?Co:U^O,^iHhY:%qVD/O_GEJaa^6$;nG`La&cVjGa*`71!.Q.fqf[0YJ)T)8rrDrfpHPu9f,sPI:k-Z'n,:J"hnAB'mc6O6^&-^#qqo*ahM"2`ZG5O-ZTl!+GPn[k^N!05pUsVmgR[$gC\Un=9UeBOLrNEDof$#c]FrBpk-n?6@<Xk?*24pO.SP"0U<OH>:VB`BiC;]]p?20_BRCuV)2L$eSp]rJZMUilC)07mfW9K8o5#G2P4:WR10N>4JBcSB8.oZPH9?SfV-<a#qbKEmL(1mmiMJA#='qc\`/:A>;n\%\aN`cgncGfe2ns_8mebLTfI-.Em;MeSrr=YLh>GTJH$)&3dGh2KWGi_I*m4:!\YBhW7CKd'C?9+Uh"6Y5"L(TnSDR7<%c>5"Mb9BGS9'qa;q*pBbP?((2V]B5IT5YTWMZAfD1RPHV;@c`RmATIfNtr$=40[0VeW0+N_"2[U.:7X6(kQd?#%M``>#D29rW]1E+Wg__On8+'c#/<B^$aLA6Xspju,[.!,?<J!Vc&4Bf[.N/7fP;2]G7[O2kbpC$94Y-u%\:U7n<WM'/XiUSWMdJsr!o#h:/Z'i>Q.!!2QQ02"r4786QJ7o':7*@)4pdS`u^*#-o0cpk9+:JV*cO[B7++B1c1<BpOgfrG*$$D8lI!E9%!!*B4+!!2QFja5>B^Nen0.X7e]H"2F3,C-/TB3=/J.+Gnmb9N9Cj,Fb=@R'ouqtIjPpUpej*bqTnDB/*(XM<TSo/TLp<S85fc;qN&l0cY-.*'Lkj<=^$;=sVOIeW;IhYlp"rU0L]!0Ou&3VO'*c-5+&Z']F9_*GtGcQ7,=H=SMB^7cE![bcX5Ys+l&+('Bh^O+UGhnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE]pFeG4hSHAn^FqY699ZnPhXqb[LK\EP(10Uer+J69-\qV8G<<dS`Bbai^Q-tIJ_p8qqdGFmj#3&1HW3)]=Si&FsWQER$,\3gloiDrU8VAm+hLMl;?@Z/,F=#eC'ee,nB*nH#@/+b`o5[fb(s]X/)o&,q1W+j'p&ma0)O0+HT+,qqo*TMsoO$n)!71q;$0b[nM!o'd0_@DQ_c[T`sjPgT+sRcE!n):2KcdLDK`YIeW;[pTO>+HhY:%[1D@2ggB:2jW&Uc^9>A(mTm;/[9Y&E`Cdb7%$GK[Y?)hncVYg[XN/,k;^Om5anP7Qp[<H2HhY:%pV2(L^O,^iHhY:%pTfYILZ=9iTD8)k3r4CVL@WAI)nW:gWgR=R*T)L,U[;b@SUhLEB5uI%39_\PR$OqsDkMIO^O,^g1:#Q&Sd-^,_Ii?2R%2/;\uQ^6`T/K0Up%gLBP2X+ar8u:eL%/nV5T666uX#H80\'3n)"$1^Yca%hn?2hj0Q?"W-;MOpZkQ.RG"(-)G$aK@;8Ik4>&pcNjbNJQB*DRW6tgUeM56C0G\b=a1luq^O*V#O.X^^"NPBZ!0V[@R>6foDT(k>f@2CGC@bXZ[WMVR"4&h.?&dUX7P#,JhnApCfQB]+oj;u][,%9K^2Q0g$i;GS/g@=gfX[nLGc<KdMNk$^i2`C[Y_'.d,q:M_h#$i\HhXd4hnApE^&-^#qqo*ahnApE]oi<pk!f:MA4b[Npi#QgrU)SY^O,^iHddK%^&-^#qqo*ahnAAFnRqZnHthi[O*smUqmqEdUthFmC=D.J&n1LB-F4Q>O]9k)`f@'IcUTPUka5MA,WGXJpV2(LZ2=MA:Z=>2l[+9a!'o<err?XPrU8VAn)*X*IhBHY>ML=s#2qfD0_b$bp[<S2!/Hd5NW/u>hVeD6co2:2!83.BHhY:%TRWF/bHu^`r1!&uh:RkP+kiEpqjI@34T,s2r3H>&!UK]`[O])[Ngd8f(iPSSb[]*PlA2J[&la58^&-Jap[<S*mrlPFRm68BEaSTspQtmIp4'i(pV2(/KAXB>hn@M%GlIak%Yrq;=dSCO_k$&)gqm2m%RdqLA'7\kaqZYa9'A2<-r`l^P86V[GS#oV23]Qa^O,^dSF(gf?h4)q?EU1FZEaA)K;W<3QKqe_=_ajjP%)/XaX/6Ta\^&ABhq5qLti5DAj5tXIeRTlag8002T+hZl:pBJoD:mpeTP7T*ES$OqgTcuZOp,F2T6[.m56e&RZb>&kKHU7=TY?&[k-D7n)"$2jF-p_^&-^#qqo*ahnAq+r^H7FT)&0ehV6X?r`mb<mS;*a3I*L*09[cn2n!cZ?N*OQ8Yjs<<p*Df1&@&/55nTr_jmmbrO:KbQR:GW>DKJm^2kFnSb:TG[l.!qXgQ<t,O1koNS'O]P#&B+?R&9N=Y'(6e^R.1lfrbdS!21JqtIGSnJD!Irr=lORrp^4\i\mVC*q<LID!\U*M&&e!(6]k1%UdUAE\60AA6g=DL-VRV%PmM?fH3eLX?Km!AsfV++KT+c7bA;;+]=\*k0SblJE;6^%\o>qE3EiP$J6lBt#G\Cc*8O(h8Xh7udE"K"n0@2BL^0RnI_^MOI4E5`)Rkih:hPT1T%1b<LqV#Q$ucrZ;%,EI[*+rr<>Il0c3c_fcjf+RSjj>jX%?ec,WB/s<<k4%$!BW/ZEm0(8/l\8Y`;]r5L3jpYNBeS(aRC+<_&T(XT-Jc>]V_X"n/;3'Ji14':MQ<")&8,=Y"3fLf0fEj;Ebm*+_eIgg8T&ul3:GG\^Jhak./BCH\'QAJ'9*&2e[6Joqa6]c5`Cpg7Q?!U`L\N9YrH%GapI"3URHe.?rHl#"T;4O*AbA8km5d(tgUe\<mG)=+gR,J_&RFA8ii218P-V$`\r)=He5XRaP.S=^*Kdr-Xu6ehD&baVlQ)J'p(kie;lqYsD!anb()%3G&uquhFArgh'3%_.<3nPuAo_3IAgEL>R[0D""K%uH.VL"A87=rI2':bV!4i$"WV>jj?a[)Mrr)<BrU8VAlltk8rolY-gM7hB44CSq02uf4cJlb.r"`(UDEMe?2\ti:'dAhF[5Qi(D"6(o/^9W\3bbkk;9r<%Q7Eg[`!>+ZgDsqUpf]hug,nb=lmt%f0ok#@]%t]"UW"imE+Pm\pq.(T)OXKu0:KsUD%.dH92R!l<$2eu<E@OE`j4/p6VSL\`/QU2RcSU$N\F2a7R'<X-f;Uq^;M+6IJ_p8qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahN36V\"EODO+[H4pokcmrrBdu%sl<H_OH&;7JpWp!5u4UrrDeSMqCVUJ+7EpJ(/<7!;3"3pV34?]f3WU?N'?LrU8VAn)"$3hYlp"rU8VAn)"$3hYlp,q>UF#LAq7Z=S]f5!/gm0^\dGspULh4-;4>K?ch4'905N@!-n<fNkJ$a!#Fq9rC4X'!*ToJHen;Mc2P\sIeW;[p[<S*msb$"IeW;[p[<S*nrNeNKlpt@2<B=WB&OaQ(1,;+o^?$or_qD.A>X_X=)_&8<\=S%0d2]ceVrcOgU+M(&i;"FVgtLA6!(*S5PS&DInSDkrl^>,!V`uD?0p8dor4[1)\YGEe%nj8;5oOJ^35F<c6<Vh%V&EW;/'1mW4?p7`h71krr?d5!!3q%"iut;K2_m!rk+.^TJtn]5+qfI]j:Tahluk4^&-^#qqo*cS3N,0cE3T-oD)tqG3mEV/dDQmHH0d[IQmK)b1j:fGg'L?m#IjViNO!3N5EpeFBD3Hl.X/oT>jaF$rhK<Zo#S`Ku!OLIk)%oHZS;(_N(8F\<o!Q]u@92<#nQ_HYX-f:I@LYGF)[rZ.Q$bU;kW];e%Obg_lg/;,]qHFOYI'_@ENs"&ZD2&SA6]2$ad?Vi>AiU-KH&Ss^/r<#d)R*g]\eMSO[(qq]2;YqKjQIeW;[p[<S*msb$"IeW;[p[<S*nAkN:?hRiV35>!&5"knUn*&WBra*>l^[/$#:OhBAG>J59S]gAnk<Iu!R/[/oVF1@`Ep!,bAH)Y_H1okYhY)9q!/0rn4YDNh:O?m<p=SfiS*eMHK>"U^AY-a!HEM[bdbuM)1`O=S;+6bCh7;paP"1[0fAoMsSW%.i-8Vi'?/P4/rb/uHr4F_sh1P(>\a0do(MVth<`^/AZ";[E9OsVjPAnrE9j^Q'1:VIKXBbJ,OuZX<MT$(+W.VB7Kbi=%+WXi?<C!X1*?(EdkjY[26S,D_lLK?hr-S1OSEk[`CL>6t3XMV&I!GJI<KgNP;pj1hkJt^P$#2H4;e0;309W8c&^RRnA8XV%4C,'br$c"3)Uc_!I7*S"HJo\q;q11EUnji4Ge-IL(Ne5&'RsIdJ^=3hYlOL3hm(WtR4\1<$7-Mg!#?FV,Q5*dH`d;JPs=cHmH^+UAM>26rYjbh?='Kh@A)u5OW3"Ki?\VJ/<Lh7qPRb"mJ7O>;]udi/Onp)V-/<]d`iUYjP.A_iCpkM+cNSBr,2;kO5"pdP"=h]YA`iAgeUP*#ER%<_qL2]Bi_e[,"SMr2cB^>_;LFV%)n@rWEC)n=J^l#$W11gQVHm#.A7#)&#^gA0DIa0mn7S`5:ZXur6Xk+bMV2)4%F=7heMS_$ond=\>FgeTuGEdc&UQ5Esn%\NsE(9^*i=oqcn#"R[T,(aR#%DG@oFT]K>#Zr^c`@CUQ=6HtIU%qp+usX3B]OM,KXoSB,C5phXdm<;=ZQ%YMq'$7\#CVMMi!5g70#3?4<->,k3MKg_1`10>?>=]Aa%EM@uG`jao+!'U54HhJ'KKC@[k1&h6,[Jp4ONS3k]\Fr_i)#5tolS-'m\m'2QmV[^4)ifNUL48d^c+R0fB&DH%FEK9+p\e1ER<TLOecu#!Y'-6P7.\5jOc=NGr^L8<$U<EPMmg?/G@'+(`q7keAmil+:(oET;,&]Wp')_83h/\!Vl-+7rp+%[]S&VEe6g+#P_M.6b7lgi"\u_a'%^,NS]F2sJsJ\K'QPX$=]0neQi[JlBH*H>)8I5BhYlp-O7.3uA*:URpV2(L^O,dNJ&9o(m(U1^rrD&O;uZjdkNs@;=b";U5O>G^(]OIMl7`,3)roQWgHY4R`r?%mZi:#cW]g79QsTHup(_rK^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^THDk,m4/%Q1;op!"])0OWXJuGK7Ik#P&T/!4QT_kPcKm^]+;K5BH]Wh/WGp*gI!.[]]W1gr[8,hT*@u6e^k`]p'&i'E8&C$hK/R!#5Us\,Q2_lg2<4\GlQ7;>E6P!/gI*+8bI"0=K*Vr)p>_p8kIt!8L_*qqo:1hojL%6MKqtp[<S*msdT0peTfF-p.6=r"]38h,j,JjQBrp5/?OpJ\(`"09q]]WAf:sgGSVMca%W([gLcH[`bMne4Cloo8']S75[#aBOkF>NMP;jq+L_f2ZEc2^D?eelqWB)h;,`PT(q#bm_HnF4[-[:4-'\L9t<3S;fH5A59[Jnb=q>;Ef)+U6OnqtEQHL3C"Z_F!JeJ>A$Qco"[iu&ZW`f#@pprVb*lKFkOcMJ"-N'/mTXc4!5c0/P26EU;3JnB(N8bWaFDJ%rNX]iO%G\=oLSu^jR[:PB%"JuW<3(dFC(gdNC6n2Du'B^/Z_u:>1sJ)ln-CZ+6^Z%3h(C\OJqfXIajjIMf7U1.Mqh/;jJM`OK+MM[\>3^X/V>ElpjK@)#jT;AQY/p\bGQ7(];+aiFi+?fK3/!f3c^rU,(OQfrA55(&7sh'5a;XfiVumQ"9cOS^cDCUN1MVgtYl_6&rQ+R,#'WOd&\CW_Mo[^0CU;_N?chm_NIXJ&BR5aE=7gTUM*gf4i?\bO8,@'*>mb]<H91k'!%40b(:n2;&u!(30R,AQ_0k1OZ;\dC^;G2l&&3qqB@8c@Gn'VF)U7j8-)Q5K!*]hXl9RHdd4_54.-pqlk9Fink^<Gil:nPBQC8h3uFQ/^_-'#%"0!gob]_T$,V`jYHXJNF^9bobA+]/@%!B@Sa[IG:)G,>K^ttG@'[^ju5KfgfZ,Nc@9hO%$bF73Le4Q-[M6JSm*_,R\I87?Wg5N4L3,u,I&MWI=uXa/FpnFnjt[d]1FQZ]1F9.`pE-[9/A:bPL%!jZ+oD:r1Et-rr=l=nO\?-jjho2]l?].Nf/42JDZUe*P'V1*YjqQZrZV7Tr:&:4\C_O@Bd"IEm+f$JK`Vp*++HXbKo8<c7R?H0;itN<#[_&`2;=\[CW'5_f`-7N&n(3WR%#9^Pq8^<k-1[A#leKL+t6*UfZ=ef?<S"Jl'pY:)_R3bSiN57JXT^5"?^[&2Sfi\bGQB=$Pe6r2>',Ijol.+6[L;^?]r\IG%Uh\3$b&[fmH[S%#f7D'Tc\8NcX,9iVDRg,jHbWF3VPTU&,^@?O2-P+o7VY-+OImt#riqM3uV;#^NjNk"]DpGRJHCq!u!<a(qAI/a&ie&<S3o#jfCPJr=3pir]]Z.S92j/%akh<(Z)H0$dXF)FhAWZSUD]TU?'e^_/2>+%Vu&cj."5Y+9Ib!2jNT6mq@B8bJrhnApE^&-N5G(7Q5\\IXkbl7\2\u4H!qqo*N5O[J-n)"$3hYlp"p)s?)+7\XoMZ3[oK<@H5?+`>thnApCn9aoEHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY)srcW_,-oSP5oM.HG$D#(uXR)M*!\mhV'nf2<%b?MA)bEVaak(&KdWcDbOT#L"HhY:%f5'9Wqqo*ETCPJ:;)NiCpQ]k\,*!(E=)GO#Tnf5@dr(`5!H'-J(a6d#/'1AQ)\:KfIeW;X#5e/0HhXgKr5/</G43@EiPF!l$B39c^ji.2!>1`7,KT4C=)c[07iI!*=-LJJekmOiPP7HT8GDS%p[<EBHhY:%pU*K3h:[h'hKr%HD<\dl4gT>Z'6N31k=g.`%SE3>7*Z&&O7"Gu;#2s&*Y6#4pV2(3[pj7a:LS(!T>,=t?OOPj`X?qK=d^<1!/GG#>qT0?A8'(\.R@%-^cX:qhnApE]rM&.hnApE^&-^#qqo*ahnApC9RQj=>?JY&9j??m4>C&U\mVBgRDm[#kV,/j*B\)@V0uIp%O6/9$@(L4FYM<qOOY%A[1N5m^&-ZlHfJQ'5.'+u/XsNKc=^hYN'tB2L(cX92$Ie4^Q)ks<%UNb6B+gf&U7nS)&\ZjIIH%km3V5XrU8VAn)"$3hS^J@m;Bo-^"5WbqSRMhG&HH8+@hR3e<kq`)V*oBajJ0TU!)IDA0+oXW2?JU_bqEaIeW;[pTs>(n)cR;ISZe!>]qA0h4*78e?_eD77^_o\\IAWTG(=,D3)8sBrLW&d%ecaN-CD;-te+lN(fK8p[<S*BO:Z+hYlp"rU8VAm#V/H1,&MK:Ak+l_gcTSmr>c6qqo*ahOFNCn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU/<&P@siZc:e0;&H;8#!8ZMXp[<S*ms@lXpV2(L]j*`Drr=pZa6?3DB#F&:I%P1sXWg,&O3@LE8_AAbN]dun%44EQA:nu5WF>uV/SpQq(t,\>/4d";HhY:%fS?:e7eF12Hlqn8UYj^0e<%QfffVB;[1;?8lRJ>ZRqj.2frSraM+*_$IbnZ>`?^B,p[<S*mpgRVHhY:%pV2(L^O,^iHhY:%pTh'RIg3V'F;@mJr?^tij+gTO8TGJUW]*D`l!CsTql[+Q;,Ge`jQj9E-Z7CGl`psrqLm<s]Rmp#!e:9b^\GS6\#Lt5/_5=RdsDT]-!Z`,B/ZYkm/.oNU:sd!U.X.@jTZn;[8g@pYN1jYEF8gO!&mhc0iVsqP8ce^+_&G^.3OX;`8%V[,7[oW!0Vd-fr+O)HZAfKIeW;[p[<S*msb$"AFnodo)\Vnn5jFse+1]CIol9M1mDiaN54jdr,l68ERQ/>D#6`)YYjMo"*a!l#]J[hg8u,:["(\"rVc<5j*/Jd.F.\NEbp35L$@<kM\VZ',l=Vu$F:mm^U#Y1?b86$QVn@I;,=(0<IcIOAkP"=_oLi[=4>S!2(D/kRR):Le-W.#H2dkBVr,2POo3&1iFpUUF8H(8CiiY"1Ta,1TB&5XW^rC_5,rhLCn?s/j<bNtM40%&5F,-A0AU'(C5^rY5:um8iCPG-b3_EJ4^B1mK[c--pMa'(&KYCrmBbBrb..Y0hmlBYQEL9/5(%>gPLrs+m87MK"%I4OMX'09r+_+O%mSP[DtVT:^$6i%q1%sZk+BrfNd\>+UV$C*]D(DWa:=q:>d!eF8QS3.UT3[_[63*$S[N5FO)&Q[^=06iNl+^jcm.A4&4o(YntZ!gh;9LW;fqI,mr$D+]q)a2m@M'p/,(qnkG?,G:VAHfacG2d>'6aZD2_&NC(tpXC0FVT6su5F10g\D/XW62aOSU<0s.=Z9(u9hU,#at`M8,?rKI>4_r&0+\ip!KrL6T3p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb#,+8d_RrlJ[.rrE$L#@W,N\qAkF+7Q/bq2p.D^[WlCrrE#Xiq=".hu$]`+8$R;rFd8Nn)jrE:%)Ik^O'%)r[*Cb^G\gp-Q>d>c#2pXM9&#H8IN^/Oj)3Me]+p`b:H?V9Y`EFb"]^e[0G'PV985.Z\tqQ,o0-m@Ak[9=*WFk>0N6h4[L]U<T>YFKE_PkocE\>U$%+KQ$Hk?+%q?-%mQ'b^O,gsrrCCo+3?&4n]-.Z!9lmqO8f2m*r"Um!/;3e=l8i62eW,Lrm1TEm%;snrr>P.9E%m;rrC@0chdV/hYmHS5bNTPYPZ?\rrE'!V%MQKrLA6/r%P&>cMmm:3P.NJDt\\\!+c*-rf/n'r2<?i!1hZ4p&!X[qu2.3r^gJkN][7@rr>Y9]RTf<p[@lc:Z\/I!'YIIJ*>eVrrE&?rVQO5D(k]]S,WIMX$>qE^O*=PJA98`iWo&!g)L%l@f/OE3R*2bq_rP*2eMQSc0r@+^?*FJnJK9`d+#m5]Q6)jRL%oG@\u+f,@g!]Spd1PME_G34a\^5gTt\nHJ4cMWJ99_ROnHtVoeA/`O]T\alDS[3gOHZ2\nn.2(Bn&'e((OZ/gi?:uSVq]ED/#Mh0fHU.(5Ao1M!><RM..]9W$g!)J(;I_D3M!,k("n)"$3hYlp"rU8VAm"^'H+.V(9q/Uj0mpDBMa7sLoB3oFXWOhP5A?$O^hn?A+S+npHm%fXJi3/T90=gA@CkGY%RZeBo>ue71\HQ@&YK@<^nE8h%B_UrSq^SV*Tn8FJTn0;1UKuKdZKM"#c.bjQ9,1EfA2A;HeRfG)Jq?#G[[<G:I/[G'(+-@6/s9UuLa-DJ2,!cgMh26E+W@K(:f$-/^&1Sd9=$RtFS9'LpBP;ClShmSp6P@+h1NGN/jY&icYhRtRB4a&%(/QTZ)!Z<9)3#GTH\.!TI9p"bm/Z8D9plsf66j/oug<IGD>qKRD%Ff1K@s(S?@?\jD&_gCAG5eWqBBBDYd<9>M&oU*m/=o7+HDnePnPlHC8<8Bb/bTQ-6c]p"909ZlcZY]KZ;_hYlp"rU4D1pe%IU-%CVUbSM5FHiF(b[QgHLCGlj+F(no\A&N5Uk^os[l##E\8+>!9:Gn<6gJoj_-]:&+o.`iods(flaG]1rHu&Op7F`?`/nk*ZjJg.84IXeq;]g\ZLo6J[[c/Ib`sJli<m-2b]doj+P/qaoXb8=;c[Q;H/JRZNM_1ZoY'i%TJpu-TkVY.5chnaro_7g(=-%^lq_?t+n)"$3hYlp"rU8VAn)"$3hYlp%O8Ql0m(WI=J)]C6Qi@'CdCju+]ma7:fiS*CrrC#mm[sIR4."Vfc@<h!1&h5h9S`W/c0sN2rrB@rmB>E\qqo*ahnApE^&-^#b+bT3ajsC#n[*FA$Mql>Vk]r[Vj=KkWhNN%'GT'D,a2"\N,5Mo=J)8\SsG\>[\=[43dL#Ul=="2l"ORhU7up<kt%M&-$^f!afnbJPOGnW`%$A_9nK;hPPkJ$POIAq+6)b[8cEHh0Iu[uFQ^NDlAG\+ASCi<!,$/JH=sArOE3R4)qVK)B]1a$d\YWk`lVFajCjQ$OG#!FUVE+5cG,IkFE.!*`kKTV'3[aMm,%MO3oai[EQkgfDI)tjIi4B/"luL!eBZXnOgC.G7??/,O!`!uEA_/DrS:<gUk7Ki'%H]AJH#U`\bGQ>S,WI=YP:VK;KT?cDg*;p,2ZUSj>QYK<)@/2+!(4IAL[I3)3C_(<1iCgF64o+4.ipUNdi+OA5lZI7];n>TAl*a(tW9t!/$p5SaO8YCn;lVIV%r;:N(,EI+4GVrh.sH\fS&LX+Z>]qqmmae'M_$iZu*R7$Q?ZI]1pHqrhQ="\l\\oX'XD=kStLAKd@o%76%VF8PM^=Xn^rc&mLYTRH^ole$#3,AuKq>CUSNZ+)=h$QDHf_I5.J1q:b!)\J%*MMiF2`FESUJr:Y/a&,*`_#u0K6P:jmK`HJQCE8GUiUQOWN(!mc0,9D>V8m(#R-Id%EVSmK$jfWs5s[q5O],-);:@q<`>!'d)CSSc!'Q5)Wf!a4W/.-E'EqK:(0+?M$E=8[+&@@ZjmHcq?N'?LrU8VAn)fK,!"3K?!4)IrU]1=OJPZ:G^Rql]l"0kp$=Nl6ZEECur)]i3pZ-7R?mfdj!6++?rr?f[r]7"Pms8Dhf(7Non)!D,q+?$]lJIlab_P0ga%l!<<c1+#mCq>qm61&na6'\>G-`KJW5W>JV5C08i9I7]f\%0X<'Ei"N^7Ge`;;M9!4n5$GL+L:O'Op%Gfkub_s@lKUVLc+>p`1Y&Q;nmRYJP%+bqG(SsLTik"$3PMF:lkYIDca78K)m@jl*=a\>]3Z-7dP$R&Or#=>N)O2:SZInGdu"U"QHJ)30RrrE!GNq*,Lm,Qsd+7R.>b<,]Nk3W*JdD+B7!<&,Y*l$+Bdf0<4$,?)CZi7^dpV24)-m-P]rpe$YrrD:OGE;b(B-.$O!":=SZbP\KDU88#rLa)ifg!6$UQ),M!%JY3kB1G9IeW;[rrA]g5E]+Hj,X->rrCK'miVPS4o>3q;u('Uc^`g`qD\:9rrB?SIfBC<)b^00-N=(klHf>*n)!JRiRbuMK_QM5RpY2G`f70bg"f$%Z<NeMJ\^BV2W3Eae@"&GE+CmkG"FL%T-9EB<38o*-T$^d9Zn'Q<<5?+m"=?%a'Pb?XjoBpQK`3+B&2e?]31W,`F>n>H#:Gt"]"%"<T`k4q+TUMDFSV07^befj<4QP[K$hQXBmN;%n.KB"Dnl)9d:i=O!t97BcNJ%REaQKkMNtA+(L)8%t=4K5F>7FO>"m$r)=2ihtuOpYHmilj8R.jjQHLmf5uN2\(n^P1LKZabCA6O^]+:RAbYYC$u^VK:Lspk^&-^#qqo*@YAo%D*TOO,!0rV`5N[6r;^J(%Nn)ul[F;hT8YB#m]Bh,Mg:PrGf)(7?fZb2^hn)r(1$m.%L5R^D7?V.-;P#0trJC$MEF:s;r-\=P[?e9PZa\fNhu.cQ:h^Q%Tt@Njo5`l7DIVhd8FTie"[XXTPS)AT.$QQBl_-S>Wk_7Kgr=4KFZ^BoeC)nYYC^HQAkI>5YE!;J:\5(1m6fdEeQ9%"m5OLj`U8?"FKR"&3mPM$DV<lN_kJ@2fU2PGDtW8NV:th7Y@LVWp:8>:Tpi.)ALJ\V=K4s;AL(3k@&fY!Jk(YDBi%.]MU&W&m%'DAgiuQ6\9bGD_*FLa'=9OA@/!@l@X3>=8[e=bWfFZV/B%cTVP9YBA+<>?676;F0!_FEO_X.7^,]c"'!L)d%O7@X9q9/`=9hZ?!>ZqbhnAttIMI@LJ%q+Ph:Xr0hjl4dMdu[>gUm2si4&^&lu(q@gV:BZp>t#_P93Md^fSR^2l:>rX<sik8sO?@^b%mZ'UY1OX1n&BYN7S<Y&PCnB(iuCFI(SHgd^VI@^ft!hE?k.2\0P1F'(QL*#T_j>&BhPP,R%H7+Cf4!V&Ka`2n^Y!gt$'bLuF)"_B#E)W[>DRMkCeQE_]q71P8#RE[mN5O'p#IJ_k!i351(XbOg^c*N,BmEN=sTr,h<E&]Ck*[;,M`mM`/dUVfl]R2R.3;OOq:aC$L)FfSa:^=UA`F?)s/8Yk9$&tUqi\?\%d,T+JW]GNV2]kI`Ji\3M)B)0*V50r>2%#JcWf!Od!UXKTOfG3lW/(ML,)'#o^f=A7-j/s%qqJTjrqUp8^O,^iHhY:%pV2'-PG([A2^+0D7Yrl720:K$!+%L_VimUH:tugP-,;WMhnApE^$$nF9g'4c73,?>.[irjVPo<9-7Rl8U6[Q6ZBC@o(Bfa]qqo*ah@G)0msb"\J&p5$Ma,<([k+;r/6uJMU4UdE;?u*d)*(>p9Y`MS+9KM_rr@XrpV2(L]n(V/hnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApDRK!92'=bg+?ct(RgiSg2Fgq),A,RKdAk@C"_[3VkiM<HIP4iWQ`bm9MJm4<,^OGqGIeHG5qqo*ahW;MqgSmtDr($$7"][R\c0d\;ln-'p8l,@\I*);0SdLk0N-.,(,u#C!YLFJ.H,%+@pV2&9If8`lrU11a4;Du0dT&XT75\%"e'pZ=#pPrIOe\?_;1Vf/8D'sF_$Al2qqo*NamoP8VWk8Nm67\8AJ"4!n"7I,A=Si8<Xp&4A_Yb\8S5\(#;&(9P(.PEIJ_p8qq+4'hYlp"p9=Nn*QA#?IP+-qX6TWYm[Dprqc2'9I'l\W1G:*7g@]IfDNs[[b055@oF^,6*"RMmmsb"G*rYQarU8VAn)"$3hYlp"rU8VAn)"$0*:?%Ph)XBf+h,()@,SMR*(_@$<`VKX\_K8<bK5Cl=SXC%R!3/IDmu[)A@7p]j57QIhn@G3aSu8$a.C4>?+GD?mb'N^,\nu!FjBlaUSHTE%8LX2p?[A</3Zdd2OL/@L5;QWWiB,_qqo*ah'-aMV7H:PiQ?"#kI:$Z?ZTX*>*COicHoPN16`LS<Ph__eOLV#,`U@%XenYA16SFHmsb$"C%$NFmsb!!JC!AdY&b2cG2?-+$(o#oB_(q7^,gJ8YK#Y%-VBggg.I1BGc.I22.\$'4o=-MqqgM.$[tQDr1Nib!44g7DZi/%!B/Qr$4:aO'd!%a7o#I4@>P^s$;Au,n78NX>s]AY&i.Fg^&-^#qq8+Gmsb$"A:OE;J(YHYkPcFtHiF(mNN_g-rU8V8htQSgp[<S*msb$"HRjJ8r`gNYHXGfW:j+bjfX\)DleU;bT.QS9Vr%<_*=Y_bPuVfdOjR"ei2!5JOY<Rg<TE?4hYlp"bZF^!pVK`%pD\bb!(J=1rrDBJ^O,^iHh[FppVK`%pD\bb!(J=1rrDBJ^O,^iHh[FppVK`%pD\bb!(J=1rrDBJ^O,^iHe2WfB2e/WNql]/I9Y;_g5JMFgA_0.O5S[eXGqC,H@Ot'F0mkA6ckG3:K(IpjiZ]JENRt^YYes3%t"&cHRSmln)"$2fKYR4rKYZ$rr<W0o)A^GhTtrbIeW;X:j_rOHhY:IrrBf\pV2'$gY7p3D&g51i7aUsf%A=/V"8*fH[@2IL!.h9@Q_#C/8Xt/['Efg;EC:opV2(L]BfH!+$TRoZoa;3U:[aV6+jJUh5Qp6AS,t-b^D\=:!'l=LGA]fY:i0V(\)fDS[V1QQ/8N$lAVr;BlrVFhYlp"n*f/Iqqo*ahnApE^&-Ihq%`hU5F7/DSaBe8T-QU.FFR-\2D1U6=cq?@ZZoD9]VqcMoHPZ:YGp85Bj$m_+-E6@8EV]%8s/DL!0ob+q9/:9TJn`7bO/`!h.,'K_M0%Y7:t&qmMKHhFO\uI;-T']RgDit)'l#ZV'48c(Q<r+jEkLAgc.u<V@*6t*A$IiZnb5VTK(G[@i'*c5;p!cH`XC!rr@aQrr=>t[YC_i5"b8"h9"*^d_6[$3]FOJk*>r"3gaXGF'IO9CgEf72+#Fs'Zh3PO;*tTARGg.qYkiVb>2_?361b_i9VB7,;.X9Mq.cY;'_.[8Y_"KQKHs!?Z479b90V^YbF*-,9[0o$D,5jFPuE)8Q*J''\%7nScJgRYsT*MrrD?!fD"`Una\(,(@BTgfP9V6-[[6,D<4bAaW2/\q$FgEhd"RU82'#&Rq-ZkI@X6(L$V$;BCX1H^:T:An*U_];dWj.7o;q+Ii8!@j.4)a2KQ>d?5mNUd^[#JUtZhO2mh6dg;EXa!/f13O6Y`D04!=3WX@d+1Wk1[<m;TaIu0$`:gAL)[J0-9mJO6h!/3sn2t)uNjDamSou$]8fm+)h51fSE[M,k8CD/KU1l9p(WpSKp1_l8E3E#YMr<+l1emc52U7aU:q;m)[^@>CNG!E?Rh''5lr2SC5OMWWuXpE""0"^-i<M/V=8sj's$W:Q8@s0nlG6t)VP3b?XOjo4iR.u[@!,ir$KtkP'U"W\H+FgA5+5u\Fp&3]NZZU3"`L#EXhfEZEjh#^?A)q^cUNL0h4,7ffne-XZ/$eu`]hN*3-!;Fj%4or>O9NtAR*TF:];IBFgcM,cQJ?c`[6mu+F.)B[Am[9VX)J0kA28E:W[hk"*%8G?m)IpiBW3;@Bc:-MH"D&rjH8-VF8]7oQ=Kp/^O&cRC%oO&]pK=e^\1Y,!#e)l?oi*'!.HQUp+5h`r6J-(rrC!Df0B/b@D0q*rrC$XKDqW[J*VK2rU91En*4iXiVWAaHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pUq^L!9%i\p.HJ4rrDRs3t)&gIFK>2OT,<72ZEd$Mtk9k!/Y?4rrDL0(U0+3rrD'7M#RIRg&D'<5kj_s3'V_-HNLnXfR_Q0o//SXrr<Z9c2Re#NuRIjY^b^1fjFMtmEbad;>\[4rr<+7rrD/n?hL[Pqqp8jhpme@anP7Qp[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;\0e`<'^[j./P!:P&*s9+/2RP\4nF!l6m_tM7<+V`Y^Ee"-,q8F?e:_G3R<jL$f!Z1m!mOH)aQB1[:_Ds?5Q2?Co23,d^[XN'p1?umf:O(`V5iA_8NDs#5MWeq"cFRg"YC.8YAeV3)&7bF%=Mh\2n00'rrCa*rrBgU-5m-&/hE<\8\3)OlXgCkIb$<JIR>oPIeTb<]m'F/rr)9KrrAC(nnd_Ijob+fq1F((fhI]_Qf:MBd+.fDhkQuMJ(!dti[Q[0qm&,6,_daYWMnO!+[K<hFDtonWQf&Ek_5.q7^?BVrrC63Ys)=gDY\5.qe4SO%mXtm>)eT"Vl(/WU^c^PRYQ%S/\Op@,^H9&oo17kM,+nTk/h0(b+u#!=]^70eQJtSD^Q<n0sH:*J:GA'Ke#:U%LpX(JFGQOli'*Hm[$)ff<hHjH]^m$<C'VZ>shOf79r>Z%:'uc,goUk;H6XdZW#B&<'n\`'bF&idEmVK!.kLNR\$7"8`6VFSn`#?BqqW(WMbm;St:14A;5=UNL!,4MF@rTUb].W)uJt7Ub\)=+G(&Y,EP22Je,VCq_3LDDrsQMrau01bM0&oK/8gJYIqI3(clHnIQX"XXBsK2\=@6)G8aK1V]4<6$G&@l0,jf%F4XAh,8[/?0@A,A>5ZR=q6TT1@Wie^^,h;#g%!&54i^)c,tdXN\Nr\2g]deVe6CB8;,*=8OaJT09XO(X;of!;g%jab(eSP??u"U$QFV7Tgr-7=/cMVh+iiU'O2o"^\IWj:m8<?/rU8VAn)"$3hYlp"rYYY8bU`\9n)kMd/dKLJrV[\ehojX5fDUtaam].0DX%0$hikU!PW\.,?F(aI[)dab>i,GGTDL9*gAUp+d#\/<+1F0%jm#Y()bIR/3*j?n#@i.$W.LKtMkS;B_bpBcmO5a<6XKuda#B#J>sJVB`*UL@gjeg]S2MTLfDbh'i6:2c\S*2D4ZP>qjQL;nif7C(SVWk>j/Ru98Mi.?J-NrQ@rG8>8P>N_MVqH1O<$[gI!%R(K?q;Zh-p:3HsDff8No%S'>(S4]CbPtZb*Inbfng`Q=_K)Sk8[^ZZJ,q]/.2qFZVZ>AnLA2TZkX"m**K[8RbICfWG'1*WH*h'OU[Z#Q9#Dmp\3#lRo[4\4o1pp%HJZ[,s@m0Pp-SJ_MlGVOUW1&W6r]6A@L88!0+gBD!<kp9<;`-Y@2ibWAI2m>\:U7uYErE&apEAiV1/aFu@5PfodmL:.l&DGNIW78F$fcpJ3dqF);l3B'&EO3bRf>Ph@rbO=<dn)"$3hYlp"rU8VAn)"$3hYlp"rU8VBBV4e&O8CT6MEgm7'`S11q>3\=Q='-Y&,RjEL&V.lHAhe'IRa,+!d;of??*aRXT&:\WfMW'VAHpa4b[5@mbe$EO?`]X9DNpaid\mrmYa6r_Z'V#rrE#1BAtlL-(KJalLM[=q_S48S1"8)YPeb+rU9+En*(5HeGK!THhY:%pV2(L^O,^iHhY:%pV2(L^O,^\Jc*B7m"'V)rrD&OI$Xd4h_DfmQ`l_tp.@Os5Oi'lU]1=B^?,(ARf<AG2I$12Q2^j]M_Dhlpg\[HH@%&HrU8VAn)"$3lC%YP$.Sb?e\<ZMiApc[j*,Y5q"H^KG9pV<rK4_^9Yr9A7?d/amV-^OWkBtYh8-S+EC#]+egKn5j=+N/1*/:tHS=IUe2nVaJ!7n*l(6&9VJfu<2+MlXS\m]fM1mg*AaXUCI0B6q8!_(o`t_l#6MfrHi/Ub[O<8'f@o1Y8[PTfUC#l1l3='2'U!hJ4=d8pdA^RU%I\D9UrU8nar5:c/G*hd_q0h%*'0BYP.WX?d\/i#Tlrm2l`qD>qk!@+**lGlbZW0>VH_YK''XL`>dl'D'C+,os4Z'1MEdYUr_7k@>I"^i]K&<Nu=7#:[2?u@KID$]lfsrWaD,&oJ;'b\65'%;]D^7t$L6AK09d=plO8pdkLoA.$.^?BDZk%DX[?c,_og:e27AN7&/p+MAe/s/58j/K$D*IpeHf+ThL\$/tkO(S0C@@6'UINkl)%=gRpk-(t'cLJrD^rf,c0nu#HF]Zg#![@RB?afrJh#m$FXUrMaAKgd:4L-.rrAF1pNn^qaJWlf1uS*C?:QsEmk9fld:2hj6VWa!SRU+^2Me=k'DZZNPr_1OIFJ:h9"K8s@d>Vlj+$LaCnJ0[Gqj>"i?U@-B^U>$?<oeL[1B5=hnAsurU&k9DYNUKp[<S*msb$"IeW;[p[<S*msb$"IeTVhb&*Ck?$qe'/Xk&mTu-M`o1X0)^`54LEjI'DP=oqnCc,`57E>Y6#ooRapV2%U4o=-Mqq\Q--Op"af(iC/g/W8Z-p&r]pDss%SB7HS1Un?nDXO<;-%a5a=BmIH.'Y[ODpA7LhYlnWc[PWWIeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S)?9VKbo(5_u:>5(@l30@MDf$uV2V\("rq>MY/\e\ENW*oBg_i_.O8r(5)#XL0msb$"H:0j-Nm^JBmd/6elri/sQ=a`<9/@6%:F,i3^O,^f['M&A9g(n/crNX>nP&S??@TD`8>K=%C6,flR]!t]>qb6$2ptHe;dqoYhYllu+T?K?-u!(DR[^JZ4]Bg.`>fTan805aM?k>]"E?d;;>-a)'N%>n<E&sk=F9eWHhY1fnFaOFrrD55q#:?o!2-N)rrDcCp[<S*msb9:LTUAJrr>.la8Z/<"a_'c!4K)GHhY:%Y5\Ka*VI!-9(n!@[eHX(B](g5D]ab-b/(CIEu=gLBu/ig`DK]0:Ro_u.aPggg/qd,'`p.PV2uX[msb$"@"5q<pV2'_^Z>LO-a3MF9@rk07N<LkD2R/`,%_,]h0X$"pE&%gR>Duk7g;G?-2uE%b!*Q<n)"$3C0uGamsb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[pKi?n-fMMeq(^D;]u>]CdaND0_nt$ep0Mp."cg>^:QC$!g7=4gOt`cIO"c\O;&Mq^Ff_a)OhC!-^&-^#l5/pGrU8VAn)"$3hX@68+7GYsoDS./P>9Fm>DLq%k9!C:Zr9t7.r4VlM;eWa)R_3)$HQ!g;l.3`hnApE^$IKBhYlp"aSu83,6%YK,k'(W2tm"FpD[Js^&-^#l+c]DrU8VAn)"$3hY0;1"oeR5C[p`j!"o/Oro[A[pV2(LZ[qT%rU8VAn)"$3hYlp"rU8V8rrE%4+80!2kPkOHbPqQimpCG9^O,^drrDf^IeW;S_>Kcem&kA9pkSU1rpKK0^O,^iHeO,0^&-^#r;Qcqqqo*ahnApE^&-O`!33XI3RiJ@Z+E)7Oo0!(mX.LcTnVQ@Trg;saJpW-eN*nQZH?(GdnTm(Tp:DrhnApE^$d,r]C0Y2I`C)ILU=)cIbNY'$teM:eG;RfO!dR@8jcMqZhQ%b=j0g_:8k$Z7eJ2OrU8VAm:5VArU8VAmm)s/>.;=olAtXBrrAFHcGTIVk\/l6-[/Ned_<:`g:&rQqIahM$><QO4LI'$M\T;t;T`$0`D\9F\CG^_rr@a&HsNbAr="(ggUR7`,s<hAFJ!0g:BP@07]FLIDRdp@GU"\HH)e1b'@b5l=#;U_FXj=EgA#];_`8@b./k;h5l(OgC0;"$dcJuBrmEt,hp;2VVOkVBIeW;[p[<S*msb$"IeW;[p[<S*msb$"IeI/5-N=)!;uC>/!6'KQYPn7.F4dhGTCY3,>Q4[9cWpJMmpUtF2]Mbs(E*h\NMZXTXmu;_^UqP$WP>cpn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"oRm/DKtREcfdqLmrrC#glnA>3:j^b\rY4,e!&?4f(]G_Ohu<\hHsXZbg]%83FsI!]BE%t6"5gfii;MoRljELU@L#h]bgbrSr(%bcrr@@-DmaK!rrA,KAUi[n[m0V,8+/Sor!B;$!1*/)f#@CPIs[6+<^14EhnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#e_ftWraH]TjbrUM\Gf.I/Ib3[[0lTY61*C`%#MNA_g>9_dd4L*UT".(L*pb,93&KBOBl%+:*-AHKT(GDhrZBYq\/I_ig4-K9Wq)InMI"RohHR+`p9)[mE8:*#2;]ujn)R"@$1iee^7YrPSj5H::=B)[mk?qrYhg[ChL5/N\g\$X->;o&:UZ#Mm3,ZT76P)A_`c95J21UIs5eCc:`.pNRO?=DEZ+O1GtBW1E#!IEk6Xi@l'CRWHft/Z<9;L<0PWbN6a&Xbf#Z?^RH9W1R?g!N3;*bA8?6(bjJ*81RZGIC*fq%AMVq"WG?N7)Z%"4k,PPdXI\I=7jX_YP"@j[S<?"?4L.%2Oul5[YpGsrQ?Qe`/Bi!-^O,\/gR6mV\?HoFCLV(cgRE<IZ$UP0@'PeV<_G<@c.>7?`+!`YZ%F>sG"3]U*&0pWmj!?C55g5Rj`_JM't<[3'j4euG9oV3_rBlhC$TeB>b+hn=S`@q&/Ue8ZEA;01`Wj+"5fl5jcLaH=lb^r3711Jh8iSr+-pLs*rYQpOo21B#]9SAjiR!6TRJ:d6]7u"gIl7>kAOufnOE"ccJm]d2W="m]2]RYjRM_PCS)W-P&&.KH5]>!=HuD)oAFQ+N).?pMHs$)[*d7HS%rDrM=qESOV+>6p*SmEbO7QES?J*aOt<G.;:3%CA]I]ta24JLf^6mD@'J-_eI#iE/Ti\\8SY*pcM.1@lT/)H!8.@$4o=-ZbPCi2!&(\V\GlPs=*O<9hS_<*V`PBf456Dp+se47=4p^rX\;r:Ki!6S04&Q*IU?s1*1<B,9QNApTUc`\R^^5!nE8qhB(bR:*n3>q]B<MLl>Wc(9ch:1Fd:EGL8>5?&8_lq8W^h4@Us/N&k9Wt&m]^I'DN>hY*g)#/EcIM^S%KqR/"_s5q96Oo480un)!<0h/[j7qtIdj^YpbOb_uF^TB7GOl94s7rYa'I1r"Q_[eBU@T+3)`G(@Y5J"Z3);6?UF+19obHB#[<1p7o_2EPp.<D#fZ93k'Y1&718b5VIbr*Nh!XKU<"5KQ.K?#@-$k&2;*&&&3Phrqt#9rX:(r#*_3\='.98>2j'90@n&<m1KSc[Q5G,qRB>M_1Zh>FR0d3fhugIfoE^Tg(d^PP"V<Ip&t%oQr>WrU8VAn)"$3hYlp"rU8^+r5-58^A`,%io#3NrrCs(]m]glIU.HV=8\Zi!6']\TDeRIQe=aOJ&U_.rr?h.L]6D[n(u1d!4)4`YM[%l%mT"_TCXQ4!19,P,S,o"qp'Bb!56'qi@s0ZidAN@!5l:DJ+lak?H2u>rr@T&chVKHrr?6fIJ_mqT(\ZI0`1UZHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iROA"bU]/I&ifF'g"[E"cIaRndQi&:brlVjHJ+6j>rrCr=^-.";Zi:"AS8\A,5PXN=hnA9.mp"+H=20*krrD*jrr?u#ra+LWTCF$#U<e1j^Z@][!,ibMNW0!8B-7-R]"G5S50X$,O/E<a!)]fs!(&obHi#r&qEk':55js,rU8VAn)"$3hYlp"rU8VAn)"$3hYlf6Ik[Ml+CCX'po#8\^\>rj?Y/Qba8M0^aj9ldY3>lchf$&R[V!;6c'JA0[:OjeilgfIrYXMk?Co:U^O,^iHhY:%qVD/O_GEJaa^6$;nG`La&cVjGa*`71!.Q.fqf[0YJ)T)8rrDrfpHPu9f,sPI:k-Z'n,:J"hn=^C!:ZsPjX^>VVo0DI2:MG@pkR"!L`:h(\ZrN/g22+qd-/Qok.;;0_FGkLA9/]!32PCi(pqdfeIYd.d_ob?PO/POo0*2)ZW6P_]<AClhfmq,*jI^feJ14]3jLj-X3e:JGO5C/kk1>`,"Ete'UG%cROXb.&BS0Q\D;qK^Pq2:rg#]M*+D$f'RHc.5@!]-<d;F2K9L7>(N4csnsoHJkHa4<hVU62k1j/kEp`8UZu^LeZb&,]Etc*m`oFnde73Q(IrSk3l12>hhB*t5nPs)iR&lQ(;q'&+/<NRDZB.=8h(Y80^=ph@2]ghtf3raq%&F/H#FWS2b=.T4jmc>j=(?8qqT'O%UopAmJL-1Q@.D<hJHU>_*0NZ7El@>bYr]uHLe>6LN#<X<EZ%ta+7&CPrkoo"A,3H=5FV>a*)?.]F]b/XakiG%:L<scg%5IUFZZ"ikA@]]pfqPuQBu:Y[PK!_A.,(TUrq.sBHo8Y'$W)W)u3M3qS`=(ptq.f\XDY0qmW^;#1;k0]h2ae*8.3NiO?NZM-F4(Ist6m8Pp&IW<IB$Pc.l%KT9_(G2uB>MHQILj=,2eOGRcYP/kU>Mti1+<0@+r1B&rqhX:!kRsS35pV2(L^O,^iHhY:%pV2(L^O+MKq8`.ZgG@on,I8h5>qk*NZa'1E<VX^)qm0kS:UY=$OcV\A@b^G3k$rg.l5J]5c0p,Umr]Z>hYlp"`=A.!m&*MMhd,rY*?&\KM7YJ=JZ0BAIhABMW__X,QZ1#H*6'GiV3$9=M2d>fqtIjPpV#Xr[cYEp?*h$7L=sX8Q.rpK$]Nk#/=edJ)Z3'6MB%@7Xuh0MB;MP-YlK^7J:7=P^&-RY^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iH_PHABA:HK[/-8eEV1GK\FR'+NOb`Q.k9R51!>1'&BY%Pb"Rgg,@<$Y\!J.kl95%%^&-Zu*rYQarTn=a^Q+l8nd9f]:Xco\-b^n\d:6eD+(8<.U5p(XLTO6_SnuD:*=7&C`m:>UR>?QVX=s&!rU8U`?heKqRt(%fpBU\N4!4J&ZB'J/msb$"pheoXJ+MUm#QBB<+9)>HO+-ilIeW=+D;Uh4oAK?Jre*?TrrB?cIeW;[p42MeL#49SDeI\jm`OfWhU^BTWTYe:3Qd;Pg97BJQR>oG5(HU$M9Y*2UIq!?LuMJjkgo#*"HS$+msat3^&-^#qqAMeml\WrDiL=&pABM)k/lER/_,\iAm!>G!L'D';P`"PAqF0b6HHo26:'Q,pV2(L^$BiJm)8A;S[CDr!ae,%GjW-bl,1bg-<sl,),6BhE`A=Re?s(=IXV+N^&-NQhnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*N>M(%8J%qK-pb7\HrrCpCao!Sr=%JYsr+<G)6qJL6,\!*0OMEOl?@D_.^&-MRhnApE^"k@48:kIBIbUi(gsa6lMZg?i4uA_'GjX0,NLT,Q<2PbUr.I;`hnApE^$N5shYlp"aSu83,6%YK,k'(W2tm"FpD[Js^&-^#l+c]DrU8VAn)"$3hY0;1"oeR5C[p`j!"o/Oro[A[pV2(LZ[qT%rU8VAn)"$3hYlp"rU8V8rrE%4+80!2kPkOHbPqQimpCG9^O,^drrDf^IeW;S_>Kcem&kA9pkSU1rpKK0^O,^iHeO,0^&-^#kQ9u<]14'N3\r"UWE2Sf<L&i".`t294G3+ZrU8V<qtIjPpV2(L^O,^eiVlY\0<+G`Zi!q_q*>/gC::/te2\H#eKC^5<AC+)Z*h=P1K'OAa0!ld?ee.pP+iZbmsb$"HOp#J^O,^iHS"&0IO]K,c2Rd%rRLF6\1&>k@<YJgaDFV1>VO2]Ibi/'+Na"VjbAe-=FZBJS^idqb>@Lc544Fo@'.6K5"9W`an[mD*L5"MLJH<8?HLqZGT+_\UIf4j(#%ZL_/:fEa@(NsG1Li"R_G+ce+XQuWp=V3AMM^1CjfVNW*UCP=uIVu,B2&Q^[6#3TniE(IeW@lq2=c-[sej8QL3Rf4l_6[%G74=].5f56:Hc2`pPrNXEFDEHYqF_!U@,-pY/\i\Qj6P#AQl<eu9d6?^`@`SqQGPN*Xob4VufHa2[QH^<b<g.bmMX7@D1M>-&e-_n:LVpcZlUW.MU@6Y:(Yf2,NWTVl?U[5a,!<][?>cV#]RCdQ48=QYYD!*JBBL0sF6rTplf"b!lWpV2(L^O,^iHhY:%pV2(L^O,^])=[AB>F,)'nS8l!VinA0PPH*E3;NtQ5VgkjeokZXVPU2H&cn/@jAfEHan@FdGbh=[GQ.Y4:f5+&'pZJOel7m@n^trH9htAu6NeeD!5,VI;>qrulro^sj-<'dX/Qh!r0'tp"9")NmsfN,Io?:HB+*V1qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnA7Zrr<FPrrB?,pcncYMZMI;qsL-OXG?^&\,KoF`\76_42:dqGket*S[\V!(@4Qi7aM)7=pMfhq8)sWHe9)%hS]o$rrAIdet;`!2K/TeGi*8lKDtonhTGiu_maN5mc';aH=-F\:]CDHir9"\MsoO%pE'=8Ia1a(HhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(N:]CF3XZr5Hq5<hu?]Da5\L,CFIeZo$GHTn.)Q,Q#iSSbmCJW^^]Hg7Vf>G$HEV0-;J`TH+9oH0GRR7QN[:k!dq#5&iP(+qAl(+0/P-:j62+a%cnHrFOj*)#L9fRp4[fBOd@]POr2'c9r<crm2:t82Hq!-/!kLfV1!91PMYc!Sj(*pO4+%3N4g8[s4hD1f[rA:c!2ns^iTA:?2%fQ:]fO+-1hrWhrbtl[.c]u-*%39Xhr#VWPDb:/R;L)q7#Cc+)ZP4EQ6O0#V-Bho91Ej=<coI8E-&]b<(I_6Yqg[QhIh9BDYKI95q:un;WpB,4<7DkMQ"oR]PaQF@gbIl(Fp0F'5cZ-sFeYq^)'WP^[BqbOf1b2`7p4e8Lus^iA\BuE/?>^T?FE\r9EkF0&?R8!l"+5fn)"&@hY3f=@QjVFV]YE2TB5]/:j`8`r2\L1<NPSKKUHTBiK@qH+oD2h6LQ?XGeVV!OhrBo/$l:TZ($^]P*kJ^1&3I@)(H*Z5Q2?/nL+8pHqgF*IC"nJ)u&AMI9,=/C3ZKM]U)W92kcr&1p4Yq8XF>Edns]k]BFj4P-[KAQ]U+20YbO[UE^CXV\7!MYSVUGFKJ+5Vo1pDp#/ocYJ5G[B7&$Ufm!2ZGp/V[H"*?OA:f%O8YMRhB]XtNfK=2n+r,@`NRS\N5m1G>k8]XP,"iT^;T.lHE^n997j9WtFEJahd=<?lE..Ed";"*Hg_%@*I0`'hhnAuL5N+j,!6h8=!&H:iiR^5P]X(Gq^-QlM_khfM7+*4!=7;-L5tLcVrr>.bQ<&dIG(iX+>$7.JVuA7oI5EksX`'rcns]BGIVX<tg"XPejJ/jE^:og0)YX)Fl72)n4pmUHZ+I;DXrPKqG4a;7miY&Sn(t&]mN=DEHS7P[Ig6-FXr=a9rM=K2RA0jX`*W/9Lk`[n<hMXJrU0):fq5Zb^O,^iHhY:%pga=(0X(@,^RS[+\0!$s!;H,(?[j_9QXBGdrr=F]nR9&-rr@LCjn;OBTCI6OJ(i?prrBTNHhXgqm(E42p[<T!chKl*r5ue:-3!t%"65IAo:<YbDdW952uIom0E2%AmHNO,e+OT_^Sq/4i&5ZU>L<BMf".K&pV#b'VYuH;rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8m*rr<F?rrBA$pnRihMLeS'!5G/5IHb>C!"*-6!4&ck?i4!(^\?f-O'j>OrrC%$)ufnQci,u(p[<E:He.f@<U\f3rrDisrrCg7^R)G/-i?L6kd0.40DSED!8GMB,Ce]Ua8Z/-Y:K!9ZTmL7_LL'MrrCE,n)"&i55pYXbtl*$pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%-m-Y\rl>o=&,n$`a`%.L)qWbhq/QE7A>A^:rr<f"\j,rDmU'h!YP>G8^[502rrBR7qtIj[2nt]WZA%c(rU8VAn)"&QJ+/[5qf5cY+8eA&7"=[qh]DcI+37C[h4<#epi^i\!<2opcg8hta8C6_+7e-trr@*ep[<GMqmd5QYC?6:D>sTi3e&Scphp*3R54MD;=2-Wh\:NDAMa54A&4/%d>.$?eQKm^ZFZPO;Fm2A=fJT0ecIUkn:(kKP(o5BEDs*gF8=R<!ri73#NTCg?XMd+c_5^b].LQO`)KRta)%=A-2YsMYX5+rdEn;]QR.JTYf6<9022MPTTQpRm_IRa_(qX.9-0U@9qGI=O%hc3oi+jlI[%H[:S?-,+/Jf.]k2]@Qa@"4HaFmV$2htn#PhGKe*I#6Oo&["Z[I%$bHZEkY,J-j4bqLSg?LWPGj8CDSsl$aXh-_I3K+Zu/1VcBL)B#n8Ms1^Se'rMo1O9)'_s,`]8m4J14)3\Y1E!"T1nQfhq)"'Wb0IQ5od2J#gVDjJinc?7X2dO;T=kYJk;*S4(CK=h9*W@*iFS(B!q\hcdK?B^]]5LN.B!!eIHgOhnAuZ\sp*Rqn2dG@!=8&mYl&WlTW\L3$%[sG@i#ZCjpkLmTalu<tURGAk8q9g3PfFnj>0&4;%jY<(RghI3>s.qq=3,Z8S=bCb4Z`jk3kuDrS5qf$EC0RZf7Sbu)GeO0"..Z-<lHSn6LnMNYpP7oa\C#,[i`$G(IsWME[rl68fnPs7p^,)0,7YnmZ/GolqN62%JUS):pVhnApE^&-^#qqZ]#!&Ca<Ps6EU2.r7oA,cK.Is%;Jlj]Ws0c;K^1#lt[MfWb3;O<[0bMXY2iIsW:lY3>]f<HCkmsb#0+2<0s^O,^iHhY:%^#.pUo>_6FkbrqcG91WQ?5?`?O&Kr_X[5C8``2$aA>lN\fp^T^A##j%aA2>:B9\'PVNRL;#,b>eIeW;X&c;=;HhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY33^R1($T'5ucg3L85UJl]s=Z,M^YX8YP0j>ft`R`4*,*F4IamNNNXc8)>.YkccpV2&#T)J-7rU4KnjTF"b@=29@m]r*%bkDV5b&0F(:phZemJ/$^)g[Zc83S?#TZC/$Ec./rL[)@`HhY:%[=<Z"msb$"IeW;[p[<S*msas<r/9k(H`NmQ>H;:p3@EZf-T@"&R8'HSgelM-DV2(?<pPh%<0X`Ci#`uQqqo*ahMm`84Y62'<5U:N9g#^I;,9;m'_"m3R,s'9U^JGG`?LRY?j`$+n)"$3hXPse^O,^gY5\KdLN&j+poQoiX6PZ>m[W&m*LSt2_5\d8Q0`]!euER6_O;BZK_Y=e#>R86+4T0Amsb"E^A[NWrU$XES\f66<Gm##jme]H-8m#27kpF7V8d!7n/"Xnp"9]*@AK]L4Fe61eOB9trU8VAmD^$<W/<%^Q9!lp1n#;UFcn2JO[I/?;B]S63>$gC"G.*'^O,^iHcba5rU8VAn)"$3hT7Fs09k*"N*RC4ngTd#*LFFDGs/XfGW=tg1/hecBoOCmS%s^&\=KH2:og$h.Qkl`5.,[_qtIjPpUrJ5qqo*ahnApE^&-[,hoR[SlEK)agO6o"ViidK2^TVZD>'A82<+=8/S/g'\s2]j;V,Kh,1El>BlV@kenb0?^&-XEHhY:%pTd$]aM7(u47iIP%K4!?!56D(p[<S*ms8pLpV2(L^O,^iHhY5#4op/d)Z4p]!5s@WrrBU[rr)<BrTrHhpV2(L^O,^iHhY:%pV2(L]g)MsRRd=CB6jLWjYHi9h`KHHrU8VAm_A_thnApCY^\"Gq^\2'rZV7%rrB[ETC:Y8n)!c2p[<S*ms8Mlp#oYAa7#3tM72,pl1VRKbLZ.,LK(N>;:OuMdp#b4L5M8KHHt?f4S[S_aa-ZgV:;,apV2&%hYlp"rU8VAn)"$2>m5Y"._:NeN2rqujKZ+7ebK";3M`ORTrt/Y.Ock3.Nr>gSu.s$e`1cqOd$DC*rYQarU4OJjl>se&+XXRdWP"dj=%:(n[:0gCT6)Z7gEJ^-t61neUrcVLumZRF_)tr"31)6K`hh+#JL#l^"L`HHhY:%pUt4SiC;_GnsB0HFH$fSF>bco7It_s[f'_U*@-f+*DPBRG9$99>5ju:ALci<VP)44=4GK#[Hm*h'XZE^<)M!%K-9i/FKPK#rrA?1+#pjWQa6IfL6A%ef2Z9p,23Il9h,G$m0&SeqS'M_f2P<E1q>RqVNRtb=#5XUWfh+BF@B6\'^..?Zps#M>.QRkb>FrEhT@>+\RS7u8.+=40sTXk+Rmu(p[WpkRr<7^mDY^O)n-'<gH2HNk-CIpF)ASh5-#?fgY7>c>s:&#K?[l+U4TupQGhj`A:g\MA4^3u2FgTZO*VOQE7oZMR*+g_r\D4pT#"s<Yh?ZI<g%b;VB[aPWg8DdN6+oH,ZQ[$oG*HM;aVb1OiW5Y!XSL(jGi/]iftEB,Bf)<h+G7>'!@7l`E?;FK?-7Tm?cRG^)m7AhYlp"rU8VAn)"$3@k[UMn%bL9o.0X2FY@6*i@?5=YD2jH:WU8jga8H72D*goWue17G+<]\5rB5!B6u7kQQif_B:fijaLl%?>(sop!$hLDMKthV^GrY+nYsN-8_5%)/#YObGid-XBTmCCl<8)3^a2Xm,r!JQ2l/VOJek[a6&_mV+Jls@YAhp$2[qW16h\$e>3Xo#T.FUHOb7+#]g*$Fb+j=X^TKN1TKfb7n)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"oRm/DKtREcfdqLmrrC#glnA>3:j^b\rY4,e!&?4f(]G_Ohu<\hHsXZbg]%83FsI!]BE%t6"5gfii;MoRljELUDqe>QqdX^7c-%+_eiqs:@Io=Hneb9(nMpr&oqlGg,V^k4T1NFl<#aKg4hBRWNJ#MbZV(S&Cd(o@PZi6O)U@"3\8&r6+BL:S9KGgKg@qlHc6r/(*1"@!dI$S?Q47X/05l=6]`/!1#8c*$pTDblrrAl;\A.o:HeKS@JpH6<pP8WArr>P9A,cP:kHTO80%>BrNZ\2fJ,Z;=msb9:T]5iArq4sK5P1`F(]OJLmsb9:TUpARrSdb)rrCHgR/[0RH10YTG,,%YE;oq$HiF*=0>Dl.r<F.m?h^_JJc>_H+1T)_:ODj7"S9?Wmgo,arf0[mrr?i\IfBC@[3,"8L]7?9hu<\UIJ_]QpkSkL$QAAmPJ8Yt0RRZ=p`6XuI2Bt3OSp]WeXO"2^N8(sXfkCP4d3=_'h72[`(ecak]4'J89<pi.A!7;SY?C#5h^b'nal_o<P5rU^A:3o._[G#NP/'@]t`.3@8WYpm<l'+HlO+&H/WqBfnaY=Ce?\Qk/KoW1Ft+76;iA-W&fUuB5#VQa^aNE)CU;^FX7oi<kFa<9_#u1$>G_Z5kh\*rVPIFT(\HC0RNQ*=oNiabd*T2A,cN^DTqJGZ(.`4I"L`VkNTa@PZhRqY(s;A<<Z"Gn$qU-NhS25lFjAAAp;?o'U2MV.B'3-rr@VK)Rb-aa3>NPKYJ,.Y4oeE+f"G<oTJn!9N,(?WfMF<BdOQVV''lJ520Q)d\A7o=PfJ2i23B8rWK/K?0.XsIgJtL)hkDm]e'<T:Y\L<o37h]4El6CXoL[nIeWB?X/i8(Wi</(WMlr%Xf.\kZEgWI.Vc!KWaohD.V`]FB:=.'k&TnX9/@2P,l@D^e5T4F4S;]Qbu7V@1mJe52%i%#e5%m-P>=<h1J'.GaMjR7Q=_D+Iq<;V`3U(J,a(mD-^%%`P#&i>`sa`Q9,%q+,kK>+6OYZD8M&<2_'=gccnichNkd,p8LD@4#ih(^&h&n(Q<.2KN\tI48KEDW+t,#1lp(OYPOH:"5QHsAJ/j_JciO)nqqp)]q%s&205/+da7A6S/re.cWTZF!G1"Feh]Sp3"bs0dhX!j,$I#(K\\PlKFlqJT`bh!)oZEP>-ih>:r?/k?ho'4-)#QAZ5-W/U_b&LMJt;c\[cLVW3f,p'GLOu>f4+#I$d/?6%o5WI=8GItmiV^8p1cL?&7BHVP]!10U`X__D.77X$<[o4n/tj5!67P,qq]#6YeOq&IeK>gqb(dEmAINR0(ZtWmQI2UG4'9_DS<`IMpIC/D6:j<WPdn<fa'4EC)j*'Z</DGND[5-g,BKD%D)$Hc)nMG[(210\T%?q#($qf+-qg8L<NLhNlkjHijePWf20u='T7E;M"ebgj-htOPlnuT4E;ZeY8iF"d>-d<Oq5<SplBn\^P'4[q02c%q%N9S4879-Y-m.eP4dCQ+Cf_gf@5/=34ChImV7TO7&6"mPM%s"5N2tYj/0qp9g//;hYq+O2a0%[4s9cumJ_^[IFRm.1NZU1cH9/NBsZWFRmbNfCu!H,WrlDRm@*<Y]3+L*eu[8*nXjAGE8k40R'+HBb/#ed4*"l.PP6Ne,]TfW@B95^a5c'jOKW4ogGclof_bX]#Q2ZXfaIdgqdX%&XS;5!O5DYk!.jclAUWZ9K+GH#]hV1,oI\^<HJ0inIt6trUmR%>R@PIq`,5qILVJ[_E^.YVk$S!8^G,/H;fq,Ma/OMUIgkW`kP#X7Z.P&\4_t&tUM\gaWKJ+5Kl.gla3QT$YuB]ReM=Q1CLuC1B>9(3,D'RW7?l1k4jB*9/:Q#ga9+i4Um&Sq-h6Z^rjQ5.rrDb(IJ_p8qqo*ahnpQ3Kn%d(r8R_V`PD:&rrBg/HMdMar4;n.ZEO'err@rdh*:f-G;$7WSGrSIemn^1R1K8>S):oCrr?WngL%^BqAt.'*C&[drr=c,r(%nLJ+oK#rr@ClrrBoE^Z39.J,]M(Dbg<4m[p_sNVuBI!!0Euo%o0$[FG*J^$e,O2sauImsb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msd/ipfg8eQe01ur)=#QrVZVhmn5>/;[<8dG=)<0ik7e\!5Bb+HN?3@r\$7gqc84:eORB$dgP$AT#.[[p2)u"r2Rhc+8L91Ik:,:/s!7m*>?1:2oR,caCaShP^AQs=rQZLNi:6%j)Ymo,B6mkaL&8cVV6=h55\UQHG>Dg+ZcC5BQi2qn#Pa0ePEb!gGO7:0\"dD+Ju09'Q[h/U<(MGN%/bJ@$$:p4h5"l-P;Q:aXfc%UR4^u/n5Mr&Yup</+rmshnAFkrr>@(p6YaDZXA:I8+&&0e)'d?rrA^`GL-6HrmUlIdE.dU!:>'u;#^Mg[3,"8L]7?9hu<\UIJ_p:kW$<)rrB`UC_-ImrPed:g3__lkU2qmrr@:n[/U-uEb7Q5?@2GC?)[c'SK'lihZ!TS9CLa9rr>@(p6YaDZXA:I8+&&0e)(''!'ra9TDQP)VuHalP;3(;g@O4:dd9R&ki)OAcM.>=l<f#7Aj=EcrY6<brrAJ5cAo:,H^skP[(:l/^\7,,B-uM\T'+=9)Veih4c,`d;,]u8XQuFj"]FEW_hrVI</)]\\-tiiFaob0o>fZO2Z?Qi^Q07.Nk9eEB_PgTH"A8W1`_^@gf61*[<AuWECU@FW]#;M.E-)_KLLjcTK]"XXC(\I@846en7(8k*@f;Rn)df^PcofXQJ)d1@-Z3ZY9*Z2E3FU!q\/r*fg,OF5P@@W3.LHp5"gCoR,5R#f?96P,p/>CpoduNrrBdjEr0[tJ&Rm/rr?fVrrE#:Qf#LS0tmLu4d7UKp[<S*msb$(]DhkaTRY^Z^,Z,miVroK,Q@anNqiA@!<,<Wp?_4;rrBsC\,QI&kO*h3>HU3Nd\-U?QIXmiR5_m-f_=4CHX2!mZ5NS`IKXe[o.'NRgOBn61[X_mH",AWf:11P)R?]O4'upH4^Q"_punK=St]$=q+1upeFC]oYJer@dBeYo?eJKUV=@>lr6Y6'^\SUipo)3mTc"<7\Jh!f<:%<qM-4ROY3_oOGc#uLe]_O'M&nHS5rD(c@$<OXI.eJN4c?;Ze6.1"WYoYp:K!N5beHO/D@#9#P!;//n)CJ,I2U_Q)7ufQr]bTbgSighV:6I540\In!hkokUX!6tA>>`")T_pYams\(N+fUU26`CEXeM75iF[s8A+NgiDQhpQ.G6f?WI#]r2W*CTHato$=*%h^@3DGhii6=V=Xe)!p8`2`LoWZj9P'rtVNE0`Z9".JCM;ufolUsK;4-VtAU%fSc(,<#;tOU=Wfb+#&b"Sn5@OQl\A%q1H,',Fht)eU[GI._b0/iej]MBZ!3u,uD!/a=c'kda%ajXU][C@M+%ip5P6u&@%qO6Jq(*LWj3bDJWM`afCqN(TTmu#c?d)BUB&nU&^MW+bD(Xe2YK?DHD^A@`4hnZc&iFiBX\=um#[t\j3eK#%/JgmHb=r6T8W\m#0D24+n4GV+CnJ$q1ZKa%`)Eom,pg[;8^5pQk2jW0KtZs=]C0^R@unBOpV2(L^O,^iHhY:%pV2(L]ifiQkJA_*N8JdVe(9tD,jF.b!1&eK-VZs'9HADk135Rc=Ls=I:E:e:c;clk*@I^4ATjjmFMMM_^O,^dRJ60!p[<S*msb$"BB,]#R6Si3KZ;C+b\$48hqL@7*)uPL?aAn\G83;&Os/jX>[D<:^DXU2WF1J&"[Cm-,RTDA&>6#s^O,^]HRJEsmNY16/skllaEXHaVG+/WP)R[Cq.(0i=VTjC+ge0&'"8Zh[m'QTIeHQachW`OX7)!iB&Cf#8kk/Lnd*WED2torW7pm/n2_EIVQ\3:?^';gPZ,N>AYsj+V3tG@Ll2<&IeW;X$@aWkl>Gk]RBU>F<LUVGf-5+7gohs/bk#[B.9CH<9_,g?4LLYFZQ/P[`;(m1]TNf?HhY:%*r])]m!TQ;n$Y;Rbo@Jq@qaKo!-aC7Umn\Dj2(+2=['#/]8n71*"GA_O5o-2qqo*O!@3h&,a-=qb:KgE9.Z%J,a(5)GpIPZS_],JPB)*KhnApAcIgm^:#EL)p=$jopK>2WSAagM4ZBG>UFD\9VoIcToH]LpeTE:Q.irp?hnApE^$f=Zq]?R(I=8C^mfnT8SWC04)chKb@P9;s$Q2Zu>+#p;-@3!nAW_g]GoX.'8LNBnn(uX0rU8VAn)"$3hYlp"rU8VAn)"$3hYln:rrD0leGfO4Hf`:dmJ:R9[_hG@p\I/0\g-`D[P*$H]7O^0j13W3Mp58Pd&7]rV)A<XhnApE]orBqIeW;[pM@UdlaTF$q(H+,2>'9U06:uFX?9@l'Su25VNkAHDTsDiirnAn.n^eb"m2jS;feeKn)"$3Bto,kmsb",J'M-+:<_o2[FD_?cOO<kpI&qaKc)bVbh3LuRE-o2q-j/kb>F-(GS3LdaiMspqqo*ah&(6pc+fH,+)0tZI<F6=GkT**[!OTKa%s9iUi@?>VkM)lj/Y.1S^+,3+!i/<I9>:^hYlp"ci2YtG5^#_$k_paT^*TqZ05>g_:J%6Ygj)l_`*U^+hAnUB3dG=B[dlP!/4d,pV2&ihg`qP^@RR('O)6RHL#"a3Ftml@qIZS:6%(m/Om-hic+ntEio;>ki[nb4Eok5hnApC;YEn"p(q]9])D0P]=Tl3pJ+95UFVb3o!D5KGE.S'9+o32M8iK$NT$_1MAg.oZ6G;lqqo*ag'cfOqqo)FI2gVhhrGSdD2t^M)#(,VmOH^YMT1ZGa)1`2:5:F31K-aRgL;l/XCRU2</mb'_p'H?hY6JfpU]6Woj6;8*jF<\;mTnGG4s%oe)De45QsT)7]@m.\Veb0Vst2X?D`&&NAaQpn"^,k*r#,Pp*G([^O,^\5Q&U;m"mgqrr<N,^&J)G`n0tRIeW;WDu9:DHhY:%pV2(L^!JqDJ(Yb<HN*u`In0M=\^g]Xn)"$0i-Y45HhY:%pV2(L^O,^iHhY3<rrAKXrKh/BrrD.9rrCq<fA?JphYllWrVPKcqq\K+-I;Q>S<s3urT4%Z]=jj*hYlp"p7V0KIeW;B46?4TI>RO\Y#B$%BoWRC?tZ)XYrBWJ,ZRtfZ]h>E,HHDu=lF1O"#1cMV/7<;0e\D5'p_s2Fn`XtpUsNi6$tc_mu:Ibb$N'>fd>IXc(]ut2Z5L>B4>F]Amkh(kMW4>Z.0Kj,Z<5G/RSRB(7R&Q^O,^\^[L%Xn)"$3hYlp"hR;S,cg;//-Zj3Ac:`(n//<7E4>q*g=Zlsb).-"q81Nih.@rPmRPl-#,3+<l55js,rU4>OK:gC-Bm1"E,HSNS+c4kmY*$UfMqt_,Z$S^>VGZB/aXa[Em@Dd,W\r8HdEtt>:YM2i8EgrIrU8V2'ApM#hnApDWSc%>rY'dc5FB\"HfY2,`7cfHe\=&A.HRbgPZ7oM0#m]E91;,U2)ZP$e;'':C\D<r'N)o0ggpU'A,MN@Ga]!+FV"KP26Z)q[/ON4AUD%^l*,LRjP;@?=.,qQVDi;b>SP\M_[\bJc`&@4HdWb1OXRO>7!"FAY.S?rW^,lqCfiKnq$^qsRkCH'&#(%o$33XndQ2m`VGEo^2\mq4IkVAhl2K,p0$2rJ4l'<MFENXXC`LD`#C('5j,'bPmL1.3T1aF/W9TL=Pk?^k9heIsH@!/:,FTF3.1t<**l@6fo@3Z`E:r+"D+s*5h]#K=/h:o.NQ4=K2_BriL;u^Se#JahBUNCcA1\5Z]#bmRDQHLe<@pWRo$Z(+,s=XI;HRL.Nf63$5Ctm#kXQkYIeF`X7f1$jhX3&mDLWl1!9OOabVr9#qR<EpSSup+Fd1.\r^q@j)_JGnWtg@EYMW>s8rDnKI$\P[,)5).Foj_2kBOsNe5Ykd1"`DA:ZZfkfB/rO'\aS1ns_G:.OnjeNp#<plMLk)TZ6;)\t9'V<%unlS>:/p*?HLV5BW&e8PKj9PuE7eq7QW^p@Q[,7S*)OeLO'`WVJ:(#,lls'`mL_5j.%<rE6n$O7M!!p\_/m1N!-lNa2mNW3'[1:!)*0R@ApFhAs/Z[59_I=`*91bV(M(']p<%VoIa>F%_FbN?LY7L2)S>`V<U*bGbCLFJ^F`3i8'TP%ItEptiP@j'BXV)o?>l.BE1a@)gM5,Xsh;L5q-<0Mp2l`hhS7/>b3(JYLoOoUqpVH1Fp63$)7kb(.p^DA62U<,eL7qNLAk&+&'JHhZuXp[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*ms7;"!5dTBm$9gGrrD&oFr1/TW'0Girr<CCrrAH'nVdDI'$ftG!8]mm@4,pl!6)P^rr>p&rrCW$n)"%_Ie;Lj"ag!YHhY:%pV2(L^O,^iHhY:%pV2(L^O,^]rrDtpJ*lL8b>8-<(]OKo^]+9:='YV\?NNIY\pbHFin8^#rrCrmZb=%h^\IT.+83:brrDJ/*rYQpoC(qWm+Zm]^QEI4.>.GbrrBrlIk[G<[C-:uVp,'Upm3=OV7L\p?!lDrG@'3Z^6j*4Bi7Y>eJ)$2mg\03=r_rr1R`(&"qqq:!7JqmkMQ4&5&>_TH1L,WK%bKpE]l5*:R16`\sA)Gc]-7^U8rrj#5Nj=P$2UbgcL7@;USN2`Yse22NCf!glg("[g2H9glXq^W%j"j.8$)*Op3"N:cU"QZEBH;Jr$>^^$E#mTDbIsqqfC9n<\Xdj?@U61;0<pGErtaI3J+>*)D(X#d'hIX@?uP:h:%u.C&0oUR$_\Qeq@OR?F#4=rQ1&h6)E`X51mI,JT%ejSo5)*P8oW*]7_ZbN#CCrn-&$VO=@&jL6umEJpqWbj85"@jXQa;]L]_0JV)(iTd0\hqIP&E1b,@nP:WLUr<M>Rc<W(#.5^HJhGL]G!$LuO+-ir\G*c4ZRbM$rU8VAn)"$3hYlp"oQC06Kq//C08%$N;l>,4f#,?UgQSB^W-UtIC2$ZO77U8E>jTu]Bt5aDChom#SXGnE`g\uNRrq2BR,MXO@K->d808Ghlg%<Xq2)M!JkXKlcV)i;UGN=PBsn6-b"4M7bgcInW&EN*aNHtf`Q?E!Yt2u5O0p[5H:hH/.=!>_UoYg+Br66mkPQO&Ekh8<r&sr7c:?`]rkQ9tp[<S*msb$))ufnkm!gcDpi53Qa4D8_H0;r#r.FeCp72`O^Nic?b[tqN<u4O.c0Unf.t,rLqFoQo8R5=s;'D8h(/>^L.?2&tJ'%TM?i)h_!"O0i>B4;)Lj%rZrP)A+^YDQEaQ0Y:.MtC^S'Ip9H0>2'm?:=E4[E)-nu5h3E=)>P2ElK_mKs2aoiBIDNje*:mi%6$kOO)])\RUgo`=^ZmruD3ds\;\qqo:5q1X=OIJi+)!6)bL0E2$eUO)h5HMkAS!4&g(4oYM?%Ga8GnolamLReAEMq2D;esR'IbF@D&PQ(VokM'@YHhne5_Atl'<W<%R0Dn?_*.R^QmJd05HN*u^@DCj@q1&DELMorf!:HJ`]oDt\rr<)+TCUiorjC8QpV$#Ym5OB?p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<Sg:\\-arKl-T+8f(FJ,T<DU[Li/peqFrQ$5Rp!91[\rrBeYI!YlUBDsPDhtpH(n^U.EHd`AZ\":I?IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeU,Ar$;:BrnhM]bPqPSrrC-$rULobh8oTr+[>jLO&#]TiMG</!;l,l2mqOIrrC*m6iR-;/&1fk?[hbB](`u>!4+3EhT?)p$3("2"o6(9!/c?u>Q4\N`qB%3^0H0@./]V8!6'9PO8\eLQeQ+fr[c`@qc6eu!:DDPrU8^)n)`g#TmQOKHhY:%pV3ifr$;IEgm.EMrr<T0!0JB#r--2rTEk$%rrBN@FQ`WDS\P1)^HZf:1>QsM!$7C1r3id.!8P]0qqfB-mR,^ohnApE^&-^#kh#h7$N0m$^Zd8P1#L4lU\<T3IJ$&_%C5t4i\<:AWncE1*6F/mIBb%08?Z*ZlWX.`YusX2)/#-8=&1ZV'eUMf]jO(`6GEN8^7.HMk8.7Z]UPs1:uf"AHXl7_]_T6qOt@I(hp2opC$W35<9Z\RlPu)%.X5KI8280;7G6F2mN>fQ8K[D".`INM*6Cp'0iZeR?Cd+BqOIa2U3lXLSDV"A]n)dRmF)<0bjCqO+*)5RY!WB&2Z?VsS&&_,207gK\9uROXr@4M<uG@;nPmnH1%hp<1c%VE,]Y#=+Fnmc`T6SL9U7arLT[\sjma)8R64eNJtcF@r,tP]U,o:ml7/_M-Dmi>WJP/G6t"+$#U#1UOkr$",A'G8=%?.gOjo+d;E5/]>T\Fhp(I?i^WiA[r7-64i\q)1alD@U:XP<`HM?Klh1@U7h^=jL;_H\hXBn("0giGI:E>F`V3Wrq.SS)F6BX=H0LG>Y%tBi<cb+JImu>ud[c+?aO1dTf0tTrdYn86\m9>eOBa,)td*b@[3:RsQNfH\gU82a=@B4qn7hfe%IqERtgj#ZY<`,!Td04o,_c,4_l;^=T.MYPSJV+K+*rYO!^"P-IJ%p@)^O,^iHhY:%pU360[W_Z@g\Hi.](#Ln_7'(B5,T-a_W>L,X2j;+ol6A!.;GjD%$F+)2u;fU5m.;YhYlp"ot^BUr1pgY`37@&YDj7H]Dhk?9(`qjouWKaGNRD7M3--C]^e1sitVR(KiPmG.d2i3<5Ia9HhY:%VOXM6.>,^m@P_-?r'jm444;a@16cnur/D.ZB$sW/;,tXG9f2C4e;gQHnicm-^&-RqIeW;[p[<S*msb#&R[0hZU'`qBH0X\[AOn8LBqgc:MM^G&Oi%;6/'BKL3<<,G,b#<np[<S*Z=i`bq#0b:VQ'G7EV="tQXf^G@,eCHiV)-iGprEP:?'/jch;XX[iPdR_.+Q%PH'A1<ja5YZ7H,DnYhRun)"$13W/5*MtgW#lHY@.e`j*i=c0r0h!i98R9'^(,Ei_KBr[m3nknLi3?"l_r!BW9rC=VLpV2(,5Ms0Ohn@]%ntt\JoUYR=CM%?2epJiDiUYfeORgAj(WasZ0Y:d?OcbbV+P_7BHJ$7H<f+uuRu_pj^O+^NhnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^!I#U]'>JsR-sf#6""`h?+DIP$f$TJ<mHDi=&C$/g%?9o/bM=+n)"$3?giI<msau:l^dR5lTP7JZF^bMjYL*_FPsW/1jKubQELITVTD>&1T4bsWm*bc<?[XfG#ASk++*asHeu)BmX/(/g7)Sti2&:J:#3:_]:TNm!#`%EltnX^+"72o#"hLp4;'[Kmsb$"F=I.?4tZ]&m1.[@mCf:%.Q[m;0KV3.[]qg:Q=nD/NP)X)<oiiE3Gk`94F&uraCTBJ0W:X:eQQX\':?/,qtIjPpUV!:V5^2fSrU+JH:kb_?4*-)R&#>.Sp6WuOO"'0P/Sti#\@BL,0/TSqqo*Fp[<S*msb$"IeW;[p[<S*mq1V?QbktK?RG>#7q:oNbYHEO62/'T]'8ML]./u7A5o,`Z80n9]8Em<^jWXP3iS@*A.bZoIIH%kmqG"C*tLE]i\noB!ORLB[si0CV;C$\PGEd=cK)$W/sOl4`mY>SgnL((dSM3pM"MOL8Z"'iHf)O6fsUSCIeW;[p[<S*mppqDOal$sGN\rEqg8>CH]>5thYlp"o\]E3IeW;[p[<S*msC^T!ri8+2>HkE!/UW8rr@,@rVPKcqq8dZmsb$"IeW;[p[<S*msb$"H@Pqp1lqMdcL_&9b%:SQ^3?coqqo*ah1,=r^O,^e@/`lmp/a7-r'UA)rr@7i5Ms0OhnADCn)"$3hYlp"rU8V<\g3*ZaK"IhaQVn,*>fN&ARIkU"(DcDHhY:%pTUs8U3]0S;_;l[VY[>:=YU+q]'d5b20C[9/.Al2LltmH+4Qp3p[<S*'E+9#K)YhC*Rk#gqCOU4rr?2Mqqo*ahnRijkV)c%h*:o>U=3]R!;2]9^&-^#qu)kaK)YhC*Rk#gqCOU4rr?2Mqqo*afX"4D9gqcP77BuU,on6C;USH@`>q*!/N#Y+'GU3/7&^kS6P9Pj:_cq0!!D,lqqo*Mp[<S*msas5G(7K7N.'NRUtn2[n^!pkGB;,?iPEn/50rL8^>IW/4=r]j?#;bHP:sN@p0/\9Mh87KH'4^D&M17Z_*^9s(2nY\kq:3&_4BqQSa+M:c-jtZN2Fg;I_ON?Y:E>,L2)U5Z1)9[fS]O8BO[p?Q:6X87^"&@(Lg'!N-tk6M(5H;l=<m#Y>J"&c4CUTL63@*K#HF.cbFg#m=0f(%(8?'/G@6]NU_p?B4+Ptk-i#kF]RDC6@rlc!l^;?m7L!le5TAe-%gcN'u$[RA\n:Wpu/Y3j3$bmO52+kZB5-lA?^J\Yq\-+W00/ma&t]ZVl2j,Kc7eB;M4WEhDk$b\6(jqgjDj\Nu]6%0]X8m@gD9^qq7P62Z%Ifmsb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;>B5.!F8U$aj'oDA8Sa*rK`SddDaPekeVq8ORY]9GSKhN\ZU:V.1]5\^7I!oPtj2UZ,W9g+=8E8D?I<Ba:p4Xdr#A/,8`U$2:>sssFat<:nE#ZBP*EP(()60VaZhXHO1mJ]j1c*.Obe+U-EU"u%.b.S&QCb'PQ:7a,3L*^)&u%g&UlXd/hSDGODf:0@pOh?75P1CjA,cP5Y@4@+./s8]J+"6R4b)[^l[SoR]u9mXLAq7E:,DnM3%9@Cf=u\,r&;+#?i.\.L`cIf4Ycs:fN5h;ZB+NGrpc'0fD^VU\,QHpCYumYiP4PSN;in'$=EZ&n)"$C!"J>b(]NoNiWoIH:J?93(%:&HU\n!h!5)h:p&>#d?`j>.q\o4ti4*_$eDidbJsZJMHhY:)_g?b7rrB\QpjrGFUsmd7rIoUmq^DIE'S#Qgr]PbpQg9/#`kD9E/fXe437%N\V>gP!?N'?MnD<%'J+!WV+FiW4oZ-t3@:&p3b!3ieqo1j]?hu)Fhu<\]YC?HYLAq7E:,DnM3%9@Cf=uZWgYW26'($\<%s@88LL1fT`p)4qN+V&'>F08UI-OrhIrAuh[BO2GfutLM)mj=b31Ru9,>B1I2,-2qbllFpUFR`9`t@igj$)AD@e84oNnkM)c=&Ib=aVi;&_*9P)j\ERZ*c;eA$VK7N?6u3Z@aAf=UIe)nN'5ULodZp"7MC^0ek^\*\SNROg;W?,o&0r3Y9Htb7J5r@;n^ZqtIEe/5]1WYYPsS5r<Kod)q7l;T0iEOssm[;Fok86R`-LCjh=!7i\eH;PH_sLsa<aMB4c&E)k<5JQG??@LiTgE?b<%6/[Ckp[;Z,rYsVM0E'i'`"2enSs]NXlmpb;rr?UPifF&u+31S`')cbK!8,o3ceu<Oq:+Fho7E>.]mKLgJ&?V\"oeS8*r(<d!2S)m+8pn?p\QB=!#0qO)#c[Jka1Ubrl2YKpb!NbFZ@_Fi2-GRY?q1oB^3<dkh_2nbY[qm9Q`Qp;!o6Z9"b*E<V=qile5V*<<RA16W9AMg,OIJ3BE$GC1Kl,E:"Rb_+4uP,]$5UlMdr=,>6TnDm6h<RkHW^7TuEnD#M&S@*289P"//'7NK7(a2_CA1ik^tdY9.iJ3YL;Wd6]u0Z'!=RZof9`B4_t*3I"-,#o%:4C@!ZMZ25AjSS\dHhY:%pV2(L^O,^^cLKS740`tK@q>9Ce(ZtMAo9)*Z.p9gGi3RgT58.RKX&fNo,&J'/TrWl8gf<7a#m+ccl64#CqGUBmG6`SaR-+aJAU`6\X.s9Enc(`@]4?m9Vj\1-2W(M.jkKp"`,5^e[.sg/u8d("5Z%IMKmi(UQ0#X=lP\^8DIPFA8kP&a5hUAZH`CL%INX$rpY9o#QBo_9RlaNlkKI"AKTomrSo!?YPf+4DuTgif=2p=E8U8d`dd.T0E$4kmsb9:LA(BMrr@:,nH8dk8Z/FMq[3)dp/1f;rrCn1r-JACd4a)N!<%n(p[DEHr9A9oq8#`(!+*A9fY,g"*]aCt)`mp>d@EGL:V%>\S!j,NXL;29[c1OHY;g[M[a;m"c<YE[.9(#88!#uNA^REspCMKi;"ZbJ2Gq'+X8;:f><"$t1trOPD69JaKuY+,O'JC5prma!$3OQuKM/Mfk']/=f98ot77XQK.4JtYRXC`E:D=`>C=BB)MlTUJC],l6qq/gQ7/&4h]p1.p_#FCe]8n\3gcL;MVo:4TIligrbi^dMT8rk;Pg!`\)+plDZ<:G89"S`^>ER$<CM.pjSnE=\Q.auO&q,<++,_3XZPa,J^0fo]6Y/$`9%pA,:FD:i%_f*eA9&F6]hN?lI;Ma9QDUsrZDLZc=_),i*K)WtPO5pMpmE"jnTa5@@d`\R9[)kAQ=aV=/Bgi14Ho6jgOJ1q^&n<7h@G!!rrCJ]l&Yh\]u'dLAKTomrSo!?YPf+4DuTgif=jJcE8U8d`dd.T0E$4kmpe:VF<<qn9g3<UUcM_ZH>]'i9gqphWOf.5G(3gskGg89;\hEAe2p/0LlWuC5!$fO#+S63/?T\;c#Fh7F[oMUCfr/IbH82`>euhkRV]Vu'5)1<UD?m6-(-1Ca[`i1f^u>0OXalR1nfk;7LO'&nu:j:kei9M>&$nX"iWS95THouQOt_4.s#M)4o<m<m="Cu^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O$'p9B-i.^@BD,pBPj=HKaeTcf-[S%>rF(QW%]Q^rtam!ii!%@^5_\fmq7Hd:5U^<3pfoFc4Ef^7@qh$ocL'oZ(V*.5Ljee6QM8H!Gb/a&$=@cGA5([in2$'?a9%.4]K7S:sZp&?25]nKTN!G&(?HmNk=dJut='kc$&&=%^.p1c$nhajR:80ai&LHhXbbrYsVM0E'i'`"2enSs]NXlmpd;rKMeh5PL+d*l%>?otUM,@p\3q!!U8icDMQ[!1Xb<p$:MKqu.Phi%P&epV[U@-D$V)!:25n^Y)-PU]1==a78Kq!(=S+rrDaMn)(s#ht*heJ*-tgrHe5,IfBD&p@o$q!-gZs"9/?mVku]U$MX#_;>r!D!8]I.HN*um0@p.'rJc0un6@pMl>`Hl_+Xe.?G66n^Yul?!ri8W%t$YB!7GTGO8d#0qu)b/MEgioIicAs9D-("!+T@6r"fhB!'6W_rbtd8!8"E'p[@lqDh,UsKAR5)oU:)9rrB:,IfBCZ+6&@[iuc=Fr=]'IrrC^'^OHF)J'Or0rrAQ'^\-pM]rem?iX`uQUtmk3kGitaI!4g-l]$Y-T,kR*pS@Z;AaYuoI$H7i3>a0R#2@llgpJ[joJ=-9/9<;a'=';A8G8n659@BDYOe"5ULEeE:[FXq73,&YH\Z;-VT[_>b"/QUP*WC'Cpk8j7:-1?<3ilO.S'Z]`EM2^mjo="D)?iZCjcaTWX)a8Uk1#q@:fQ#NE?5kO$?Ehp0rH/*p7nE[bT.I&\,(`?,*m(=PW<H4,pD\B(24W)I/jY1Pj0$b=.T5AT>,_:IUDcjCkH9B7aZ=VMWtH8s2?TaQ'Q$N.$."00r$k`FUHtZ.V6O7[=DJIRbJc"4L;t=4(!C[+1C@PgZpZ`?MTYN)bE3O*k)1eWJBf*D3ms%'6N]b0"T>=;qg#^A[DtJ&?V\"oeS8*r(<d!2S)m+8pn?!Pd;XpnRihGfT@?rr>I%>Q4]s2=8$N/fXe437%N\V>gP!?N'?MnD<%'J+!WV+FiW4oZ-t3@:&p3b!3ieqo1j]?hu)Fhu<\]YC?HYLAq7E:,DnM3%9@Cf=uYe4aYbnF4?[_Mdpm)^tCk^ZE]Toe75q:?L:u5bM(VFN0RYUq&/D)rnF*cib<#.Y+=^CUP2lS?(Hg]:U,Ocm(JtApc<8qYkF[BffNr+8suXOp<g]cp>-:B>05j*XHo=hL8CW;JkE&B>"KSV"ls.;E_6!d(a,]76Ve+inL5bnL,=cF/5%]((f^a,h!rM\mqZiV?[7(shnApE^&-PjEsIESfNc/FgmF%,i7kkr(QcJrn/9Gu-<gkI_W@aCTZU_!pq$7#-urG&Pmp-Ce5OU2`AC?2l;WjQjRJVmhDZU4bi@o-pjBaa?8F*hajO,>j)TCuqKXN*Z2"_FW9'kXTrk/VUR!>DUQRMb^k,(j/r:c/E[nX]Z8t%$7n*Yb=]c6X^t=:U*rYH*J&?V\"oeS8*r(<d!2S)m+8pn?!^G@.pnRihGfT@?rr>I%>Q4]s2=8$N/fXe437%N\V>gP!?N'?MnD<%'J+!WV+FiW4oZ-t3@:&p3b!3ieqo1j]?hu)Fhu<\]YC?HYLAq7E:,DnM3%9@Cf=uYH3k+-&`nl]tjKlNKnaiP;HT.A5XsYlilJAGkI=7C'ig-Gk`PuGo)c$KjX00LF>R;g5=(oO.X_g<FCOM2jI5TRjopJR^l;"VMbaq:c:h2=C)e!ShV-dRp-;&hX=]^-mA*PPC"[l!+NS0M!L:+f\jAXE%;DUH^'dYB9l"6ijL)+@13a&4H-#PASIeG_t'>;T`msb$"IeW;[p[<S*msb$"IeW;[p[<S)(%sj]o]L/0OS4H3m!\M7N5\Lm\Mi:t-'P'^g?XgC9ho_rm8i;a1h;V0qqo*afgX&5.dr#c3i8p<WGAb-obemkp((TL9('pI?!sYeokOf`_.(e/!*Mh,HhY:%kDB1=56p_$+)q0I=-dtWd79Mh%`Fs1-='\;DbmrY+IkE/<b7D<('EI-qqo)UcF3NJ!7F"pBBpV<fUF4g6Upl6(>HjWk2qZM7e,!k9FmPk7SX5PFquJ%T76P'IeGGlpV2(LZkhiiY-6^X#kH`rXnEOub/6dk"?AWkZhF*B+VbD@cTG0(f&^o%FYV<54\Um@L'Xt-&2)!%p[<S)SGrS#l_)#Ua)q=]rejL;rrCVWIeW;[p8lu]DqB=K>06J-_V'8oI#N$^OIL"PC`_H!\ghlIJh"ks'Js`.*%rNN="G&j,1f$Wn)"$1C%'pWn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn(uOjQYGhmkDfHM]Je'mh3a85MQceUjhkT7\DOlJ3l+bg3D+%d?atf$@#q3`L,M/dIeW;[p)j;7ZLuROoAdE3rr>KbbPqS.0>Dl.^O,_P03nb]!'WKBrrD[pCqotTqtIjPpT[4)MT+NDe6%)N2M2Nr`m[@HNlC#Al1+Q8I2iM;Js)"GOuR0TBq[d,,E5]&$N]_QrU8V+qtIjPpTV!.3]j4N=<I1#eXHYgbYgFK[rZC[/mB\)`%;h%b14n]P+sG$W%gnt.4b$9++*asHRh,FjbN>X5:!SWdZ@q<AN05=GGej.,E-o>AeAP;G>dE30p&U:#J-asC_^gUIeW;FOo2-V&V:>TI/<n0.XMhVfml:SV`LqirWF<lp[<S)2Jb$uIh;J-U)M:Wd$kSI;`L)3[rPBuDlUro6O-2^WqXb]j/AlI2A]Fa='rcbrU8VAm+=fJE5rqq7Zg+P/9+)sW^e%BTi*kt5ZC-J!!$+3IeW;[pWqa1qqo*ahnApE^&-^#qqo)pB(/nsc&/U=DG2r=E+(L-Ok8R`Gkt+:._7V$Nd0Tca4J4+8Q(\s'"Wif!Rq_&*rYQarTlB@!+kJh^ZWXZrrE%V9pbk[emEn#msb$"p0P<<rd8ocrrD8ifmis3p[<S*mp^G^%>W]jauh9Y'og&gZ-\AUIO>Xn98pke;lM;jUS+?=$<gP!0d0C/DLS2Un)"$1bMU#1hnApE^&-^#qqo*ahn=d?rgW0nf9WJ`mZ+=5IEA%`n9t"G5I%Z:@kCpY[*[3!IGRI=Ml<_Uqg(;Jif@<7&OrcOWW;e.HhXsup0P<<rd8ocrrD8ifmis3p[<S*mqNlLeK%l"nh$6^h.s5QSmA=lUMQg\g"U]QO_Qo53@:P:ls;`=Usi$,UGR;(Ys:k<HhY:%pU1#$^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(LZ6f#'q3h-sra7`<q2"fmndfX4G"\oME#C8%97u!2mf`N6Mfd:1V8-&0^@L!iDE='(c\/;u'^[D"K^/sPgoYsHq5s12jdg;Sa8C2LbWf^jCmnU'B'FpaLYXqu`)C:pYCdQ@c+'u[A=-CjN1;;PaB-B(!HE:1?@NQUBpTW?*EuHqBn@VPTL`0.5$680MBA\oT)J$Lq_Z%D4o=-Mqqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-Jpq-ik:j%mM*YG^fLQ(=t4l0bdUh,p53:V1[-S^!RtPB>u$o!S7_5bm%X9`@j_=\".FF`RP>6mOPi<"N!Br^HIg`XRtFAG=+@T^0:R5'DQp`Lk7KB(ApiSB=d^<R>6p4p)[gXqF^_j!S6S+W(f\YTs;Q-'Y(@;i85I9%)1V(*P30N'*+;WnK:Q\Hm[#j57PQ3X<F2KB4IWCnCRg4mbVhh*ouG2;'RH]lCD>N,9&NLDuW%mJ?+*H6'h^`+CILT.u/$J;NNb@aPeh;@-:p5AYK*H$/9&m;AoYe@Wc)[uDt>DVEmQ<4Nns>cfRn7^Eb./6'/p4FTaGM^+:O+shpL-qFIP:0K.$>_O_/P]Ekte#@#W:s'b.1(j\hYd5buO+-dVq[l!6p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[;WcY!8>H_1(28;7sUUp!:]B]=Io=p%<M!`pXtCV;&WMQSF,plfl.@Ggk!+a_b35X#j_OoZ1IEQ"9mpFdMf&[VsE/MnO\u]8tu9cgAq?DnPe/<o]t1?$uo!FMX*Z<:)+s>DakM24,k0'W2fr$tH;VrrC\'m@Fac,,ZY<-48DdaM;@iBgPK6$msDSbnuE'rr</ihTp,H9C:cs^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^$@QU!"*68BjWDUQ+'51A`)AZ1A`.*\9h#[2g3R(P&H>H8%e(u_dU!$H)`-`V6$Yn=t56/@Tl2GZLR@IrrATsc>NOS2:_XQ])!3d[P@T+otP\ThTrq!gN;25#r/sW]U:6\V1PRX<gmGrf.I@TEU<kC[h_VSdGsB/Zmt_`1;tE*+Xeb$CDI&2)uKB@i9A"=?gt<1qW]-&mln)DO,3Ul\F+gTf_r),q0KBo=F.'OaR!3;Mr#CO,u]ZBp*D=a(K"IhbYu[Vob#5,%)jJlFW_?H\aC"';'0QGp;H>-Q*\1hjE>HPCu)A2G*YIir=e5SY1l%U#t)4A23ZBfmeA;GAu`g\@WmK:8Rc9]l51-#MO(l].qr^u.H&3&'lZN="!=jId*EWR)\m(>.4E)daS5.M%=]gC\+=O]Fl.&Xr7cD8<UGgcLO*ABW8QsPNJ15jWnC+!G0S9s3t$#q)E"Tijcp!:a!QkAQ06u8qua/%?krQ+J%s>--H*c>#koZ#HN#LS0%H8NIC+!1EcP6PX-_#YMM92T09q[lr;do8>A^7mXT_MpQ9&^B&uXIk@gN>k*jXW=EIE>gT76K%5Eh0!Abi>']RFYo]D3Q>1Zoam,Wbh8E1<J<m<u"FNW/uaS).;,hdbS'[P,/fCDF@QT\>lZYqS/]Aj[RJ-7IuK8FtB'.`e@_R0q:2l2FpP,sEK"Q2(U=S\t#Dqj2#?IPWp=_;L&8G#[Ps*_.TjEEeleZ$6-N@QI0m,Br.GW2f(AJq2IkX-KXRe4-(=m2KDJAT4&RSTT*`f>1Rp,]W+:]WC_#b>hHDB[V!&AH?oa=lauoqqfL[mZ6)nhnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahn@X6o2PLMgtt+U#ktOB/qEBS^-;7_ARfoF52Y]m=h&J(j%kBb\30b3B^QjpducR8%b]`A4Cpu+^03srd[mSKe($nJVNdg&mH>V3q*4C^[!G6A]/EE[hcnNe%h9t2MN#4h+,:f-`as1;IkOlRFj/:mG=F?FCjf9IlROMD#?3M"Xr/*9(,i?LLTJPD<LOhpKg:jXeSMOd]M?k'il<f'<[.G`Tc>/$&,uWnGJX:Rra('WqY0#7aPQ`"O?Jl<G8BZ&'jH9A^N!iY[`ud/9Tmt'Fl(0_mcnV;kKE6t)l0l=cW`t/rr@1K3_)s[.2)MLIkH50IAu`MimuNA?K1?LgKW,;R+s]9o(82MN.q^X:hFKDU6B8-S<i)fP;eT>@bG(0QDU7A]_,1&`0%&1GW)uSZO)D=K"A;WC*S"/a:#@p/<+WP:FHi4C!!mfP'@)d^"R,*dHsBkhYlp"rU8VAn)"$3hYqbln:sg8RU=97rr<H<NZ\/GG7VARrrD"3hspXB_#FDP:T"-lpMni7_&f?N!.c$6q-u_j!(5:`pV3EZ]tHRghYlgt]f28/l`H_i3sU.Fk]Y7ofUHM:]XN@MaiMk>G5g+J(qQg*i6C=/<Ha7T'oAWQGut,K36AH!bIKPQ%qk:brpAM:3a=;kg=TZ5j4lY`k:t@nE-Otmnp,&B>_-"R/Hl;/P/om6+s&o-Q<<(&8Z$Wj-t@O6Oc>VNND$mgr$nWjqtIcB[f6@!Z2SqH!7"g0DejLAnlk?#\*.aj]i?:T<qhYli-(u=0hXfqRk$k7G<Z$,gg,bnh)dt5SDFk)R`o[!_JQs"8qeIRe4j.C%+D)WfT50#r62pChf3SZSc#q)7a1/#T%Ippl?bb"0j#Ee7LE>P/*V#`^"8Y.'H,`?Nll5SV>H]4%Q=iYXef!<1mKc8,cVG'm+n/.\u#q9:JXJJ9PeJoOuHbcY`;;HFcn"q5e=stZOUkD"T.r*A,]d2qu.:jZ2S9McAqm7*HCVq[JhfHXgc$N>DqRo>Z:$I$LOaQgGhd$gUNbFfN"D1's-2;MP?!#m'AcGSa%Z$Q?mkR1ipUUj5LR8rc7mGjC[04&",L<Vg%T"B5lV#-^a>8Rgp4"WrZ:U`^ol^$3R\N2Z.>fR*82t&)1X!&@A[`,d>QXhH7pe#<)I7.2<nI$4<;NOj*9UV\,t!dAQB3pe4$F83jLL/dWZi8&'E(A)5Q0?@2F]HhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^g:qtt"TD%LI\c2YfJ(%d%`:ir:(B4Ag)#jTj^Td_<poqGQrrB^X@/CEq9E%)=rrBHt0E#Xbp[;bp!<*XYrr?q/p_!N+M#RIZJ+r^2LU1RiRm6;nh\<ipdbV\8o686aXc*2Z*hF>M=AAeq\TJtlmdIjB^U8!pHhY:%pV2(L^O,^iHhY:%pV2&$?d'>LO%+UNhi"!$j\LA:C6NE"'rJrec)lbI6b9lWIqDTVqlSJ^3h!KlGUddffkDapRFjqu6VgW`0j#m$AM&B`^/T6)_bQ3III5c(PHG:3X>CcA(-SYBGBrVhMG=!ZB^OGeAVqqB\Q>\kb;0Fgl!^$T66_.R%9]dO*X`uH7^\&4.k4#snkV&K`rnYh$b7AF!!tain)!^:!9bNe<W<%+HN%lKgP`ZC!12kUFDo-*MjVcF=+f6hK6M2#]rp,cDrGsi*de,\o^5B_p>#V5QD(3GUs%imcJQZP@@PFQXX.(;?$X#Rk(iQ>raGJ&Nm%3_[(=#H3];n8<+>?bD8D%^2)q')!3rYcji#?Q3u8XBZ[:-7Q5)7P$J[6\Nf#hS`YP.bWhGCfHa#FpHFtdCGhd>^;E'ja./I/41=[Yu<%o:J7Z*l/_>!DF$@aJ<_>\W2D:RLVA,P)-Q_j2]DS<sSMZ0F?%^i:jOOs3G=)uf&j3D/S5@\?sHVUIT[cm4Zoa`B&DHG7c<PkW)W[ZLkHZT0nS%&3]=6Fp#A:4CWfH"gg`pFahfrFB;cIm9tj/V"Eq5LYkPGAn^?S,K5RYM>JNE2I9LC[Af[1TBqFHem\D6l.eBe(Y,/N"_'$ON]2V^ZqXOM8-O$aaJT$.#FR,]H'0hXuU%='t\=(X?ss5Q5_RmdJsUr#Pe;\;%^oJ)T)OKDtpp?Gl0Drr=i>0E2#(ZMsps2ns_9*W+U?f\Q#QrU8VAn)"$3hYlp"rU8VAn)"$3hYlp"or.jjT?3SbQbi\%k"YF<jsPJ&i,85Q?LslW8e%u/,0Y3FB&qdugX!.043MR1rn,)*#jHM-hp6*i9a+6#$s9FMW;\(ue'CNYjJST9ILQ5V/h`B;)#e.FKD?275:7DWFpD\Ymg<;@eW1reW\Z_gVfH\o%EF=\480VY=>nGP/%%,(P>]jU"'5NtOpGWsLK%0Ep@d([i\T7MV.O*'.B<U23($GI7[A1^-)a>@..F7%)KgM(@L!.pp/h!1?IteIn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAmn80*;Qo]Hq60_$5$N,I5^Z;MotDLe])F`eG7O:-j0*/USQ/C-ip=CsfiV*=;d2C9FB%a.p#SZAd@@O+fI50P>>OELr6kR;HmA+ZYj-+Xa_]aT(42sYHP:Fjca7E\,kG#J2m2T'=OBc)<0/C_0h&Gr\goKdf3ga&K!"p_1>@:)7n&D^'kF!Q;gG#KP%:M_,dAUs!<Mr`HVjV]q&tanJai9k2p)P<e%iZ[dX?Dn\N1'q$oi+ITA+H&)nU!>XR"s%H`-<\*mDN-0sMsqGH^Op\S/]EI!=gMn"Non?I8"4UV&*k?m*LLc"4-/ZYg1?__UPqB7B!*X@UkJYs-*"7=+%bGl30GIH;^fZB(_NnYqd<f8`M-q[\/L8ACb:o*O5[b<,N>p:&-BZ`([Yh)0PKYI`&V+l)kf1>"XYot:#V/=@AknT2qdaK?>^YkdXS5W*guTiGqX?:6?:bpVVuHf8&DSb_'1.Vr(4Pu4"(>:Zgcc-f$fMjnhV4PUHM,ukAZ7On[%BB-;*Wt<%.kuCHBZR\f?c,kLP<7fT`qm.P)oR]=G%+<3L=\8:"JR,DR\%d87+7P]Uk/Hn0q5/8[aumG]b5Ifmlop[$/X;.1eEjl>%a(N,B^]f=OK,%NXiF@&o^rsGB/[1aN4qY+M%s/m.[DUBa]IZ?G'rN>Nq188buWW$h>M'%G1Jl"2VZukmAa^Oqj.If4Z,As*"=/KeO>\<eWTe%l#<Ia$<a!/mS&ApUrY_j`7*.6`/8#^`≺8-MGu+ldKipTn5=YkGj+msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;[p[<S*msb$"IeW;WZMsnaDs)W@>N"-)5575;^,eblFY(.+jF[;Dh-G`fqqiL*pBL)Zg\nPN:OI9XiS+/j'18A.D<strG[67T9T<jk+r[`:?q*PNh%tPq+6IS!58X<;Hsuf4eltpX8V6@rdeV_T^%XB2@kY?+EBF1#\[Oe/jm[V@+%qm=@ONTtDV4M3AP-!bC)@5@WkYe0F7/>k7cD9o.3PKBfDUAde4_-5<@VeHV0M!"F@A56^8%apo_7g$9maPq@NW@3pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%dLZ<moD\f$Z1*8C!#>[@^\?PMmo^1r;fDTT^PlOpQ?RiXnaUr44)b*MfT5lgTDl2.IeU2;nt#d\[on245Q"=gLAq8O%_ZrOmsYChfaE0[rrC#4puhYW^40dB&9ct/HajU`;W@]VpBD.Wp4*%105k1qmn!HYpeG2f%/I$rZh^U#!&0G#q%N<TYkr4:HG='8`^?s':@#"%e7!O&AeX6;g=hpoN*K>lqH9SVLMkYa8=H*O'9I*WpT2^3Fnp7P=2$kAI(8Kki9i2S^\0S+gO&XtBl0C59dI7('i$QpYh0j#W)<sn,Y+]Ke3,kXB)T/&Spc:H(H7Z%DCjTqF`d:5o^Pm;&P,lsALip$.qJid%DUKgmsMn/:I!((q1=!8q31=ZiHN3.OS.KP[ZAKn[bFq:bF[G_*PB"eZZg>:i7qUV5ufi;XMX).?JiWYW:>sAZ/K;gSXnkV*`M'#q0tK0RNF,mGN<DW^Q#uL4*ms+[f6>Em*%>!CFb%V@Kq.RE,KR1b\Z!9jP89FgALXl)igeiM8Eb5V3RI=ZUs?em_I02kVAOL<\Co07pQ77,K>lA%'nDG$@Jq7+sM^_U;u0)N;JD0'@Ha6l1SD+iS'pnUX,C>Id;i[4cR9q*Q@R[DKQD;Do-8<D-'Aiq)Q$%0c1Rk3_a^@3nOTSkl)&ZGgo:-rr=INjp_gTWQX4LS:AXcLLnKMQ(u=[o,Y;qle9"DN79HqV<Ifc4&M'X*/W*Y;\r@KgPnG8luWP0Z?J!Y]R/rqeRR1/moksWp:lRNa@K;grcA`jm/-Ocn+]Xro8i^"hd7[Y6[pUnjsOFUo_BBplCY>]2XbH]dc'`nU9>`hHg_j'h3ldil#toAK+5@I(^usRh;`QC(oh=bkj'"m>+&%s(gkD>q2>0+m9]#Dhh+-I.[+ms(K!Q4B#JW@i5\`..Ot;XFO=pLl`di`_bj<AZT0""F\gdijFhO!1c4k,V<3lXrqb:%UFB>Q?+4m.93jk3.8iL6K[S)Oob>l"eP\k+CTH)#!PQakqq]eP284hEBtkg7pI]6tjf@saYPokYE]]J-;Z)[740&BXPMN-KbDsKiD(;^"ac3..ZFKh/%SDnq3f#2R(K"5`<9O%1/25AUfiQKPX81/tR#\Q-^C33eBlk(1AnO11EpenS-5t\>!;CKsnabTcg%D+YkA0<4WG<sJP%^h`L2)?'5NQiS*26G>j.kC0Z-l!ja[(neP!NG3L`0V4<ABj[`?Ql`")p)\EU!NCqqW7ccghqPGF`BNo%gLr5Ob><QMo.d]2jt?].ojLfGX,@g&6',ZS^1^=Wd(G12OG@cI(?&Z;o,`BgYOXgQH#YRRm@RL(u!b$\*XU^ZKC=[]P#Wl@7sLncQ0Z9*J*sT;'sWZRa]jHY;b_N%e%1r!nHRro)`RIKug5ID%0HfQYBZ,H$XO`X\5m:<hV%n?kt+ouY`b7N+^mSa)r$AcT<"F]VO1/pIDYWB\aVpTpq#!"#P%EF#dGdWu#*G!F*`i3bcs4tc$,IPZ4d]KR6lCF<][?2jmt\:;):]-Fa=nBk]"S%Bc1fst9+`-C!^H3=UG._u3dq#-UVjLP3,p[?CFVX.$^h4MSsmbWuHmHQ:@T#Y??n4UGQ^?gJ*qu^n=@4<FuTVC3UR4YsV99Dgp@AR6dmNRLbdI#[sDMk"(79(*j6-*Q--'gtc+.a@&pn_ZR"^+42b/$=b6XbInpJnuS#Pit$1G&:lT]ohF;t3*6[S,W#=n`:$IbPPuLLtD9/LKDNh#58p2$Q]pkBEaT2GV,XQO^?:L5-_2a$ATKETGS(&O5E!o%3$4=8A!OYJC^%n+t=efj0?G98'.bmCY>8T.Nd,lriDGXNfic,SX%dUk9^6]Mu7<ZuIcsW,&btSDC`gqsLIY\W+]NFZigZ7O3jJ&d^%E%3s"0bX-a[ZB+apIeI=L(]G*Dr8dQA?.SHsNW0!4%Xc[jcL]eXgn&-jYkoemGFmCO:%=a23G5#>V^Gd@>Ht-8gbTK3Fdg&WQ)'^TY49t2I02\&r_jo_B5Hr2S]B:\!6s]fQM'Vb4WSE1+16<aip@-ib1ueL8L:1MrT.+&D]3FKEY$k:<TEE0hEi*C"MU;qm(LjV#$O1YQDgmE=k4JPXH&lbjK*P_o8(6Z?'U-D!2mSY(k:L"+3oYU^R2aimlub\1+KR)YEL%I..CGr+2=Mcj7]p&Z23c2PH3F5V;@\W%nf3BV;@bg\uD[.CF^h_W8atXb0l+q`Cq!]'ga;=9`ARNX7H].g)VL113uW\F`bSd0/#o.j2Ou)Z?sc-e^i5Xnj@G+Z-ZD/@,.5=4U_m$<)^\1*E4oc#)Gtfda'FODQ:qAFdW*+<le)?EA0h@kCK#?r`IMM'#>[jO8pGZ(Bg@W<.DcGJ";X8rr=]7:JuR-pgHlmP52f^C5sj:(G`KM*T)tDSV*-Pc*MTE@rL`3Ps':PE:tYimlG3bG2J1WP.HMoN3/7XGEC7R5(>R'k$>_#,#EF^!6;j6d)0)YDn>2nXiBFV/sgP-loh7NQ'6)oZ5B.G=Ue@P?[(s%aUIfdPb&5^BZ1]ZaV-[b2GNkV.WC;=N5YeMI"2WbTM!_\Z^@M0M1Ja"U/4iB#T?FXe).j'0"1aK+7Pq>T3flgB(,_Ih;tn*:0,`jm]'TKXPR7=^3W-]\8!IllY6($m+fA?6$@B51ip.\f>U&-R>b*cUPK\k+s"k`bl1\9c).s`dWSsTrbFZh[<o?ZQ5o6S=&ZW@2fs2-#$ttPWJ:YKc$t0Hh1dt):PPu#2MO\T*EY]Z,9`J\T4i.4Kkf`+FcbYi&dgE@>h!NL![Ek(\a]Y1%Aj>:l#H1Km>q(jpCGG#L;1fB\9gRThYCnNQlT&T^Cp&UX1u),57b2<F$5_Pn#h;qSZTK3rZ[769npMpGEC)2OXXb87"UH.`Y9#7BA`NJp)ea2ErK(0LV>MAVdE0h)e!R.J]Hr#@r,%QYdHJ3k?lrV;73mqG8!8:5n5so7C\(J+KGQBWl7\2TE%FZWAe*`9,Fq7WYVjo:7;T+a]f+RAZ':s-u*9]$5F=^D8j!ihn?dS_Jqb0GE9o8jZ1_:g%$f%[jQ%d[c?4mh2fj"S_5k`7W0SC[sN1?@.9ER1=FWL_U7C`1bc`dOBOW_mWnNlr1#j0ZhrqD5?E#8E:6KH?uO9/jQtSoVWc@L%,!\qCe%lN$t_74Uk0F..7]GqN[1og.M$q#/TkAmD:-nc<(U"e,dh(COFlg3W`25S!.%X1p[;[;j[\mXrck%ir_RfN6F6L-jLu]56AKnf9C_1[HtM*%Ntp?qC`:sjo!J1_ml&21oS-(\fP0VG1up.\??05hVL!eh:CG2F!WD?RL\[M=MXM%uX/Z)-[D*bH4ib*GI\OXMV?\hA]p!0[UfHp2DJ;#C:TUTd6Q7SrLt0hCaiR@fBnT>Qb7S[6mJYk*aAoM$/W7UT8YV+b'<OcXfn.FVH:A<rl-s6jg@cUaIeQON4Z;d#^]+:elHdu;/hs!BpThQ$DoN7.g/sBLhn(]*Khh?eb]?p7DHh*XD&i9'ltub&gc8%<h;!6<TiVsmj4ep5)d>m@(e9/mWE#n"&!_Bhk&L<kA_93i.)'Tf:R@UqRGU"&V7O+uEmM::P(++c;:jqZ[f0>9]Q\!sf4+7FN*bD?N\&0h/Or`8<16u=`5-%Xk#6HiF%qj(_,6`Ca\]4f'mZ(iVH.hrdWt,G&k%Q/j)lN[*:rWGaa@4d#IOJ4Hu/#-P<0PKU5*IWa&D>2eAGar-;'0n*#m@Ect=][fdYp@.&G('g:FgCC7,bZW2G&+>Md]^(#*sCqrs-Bm_,e4e@6"<fNVR.j(N1<=_dJhDG32?:/")mW0,+HFs;6fVOXZ?1;qc'hSn8mCj@K;3qtuQel+q6MG;5"UK>g_O&?X$rZg=6k^WU4#^$(HRAKi"rrDQ(pu25Q]bbYbeVF,;%K?DMcccpt2#;.j!-]H=llG@Ep^s%r!1#G`oK?9jHhnc[gXFg2n)!A[q8%4BA9PHQ\,#LESOZ87an?M6pq,9;3#jOh#HQ'd1llHR<b?NX.ZQ42f&X;@#+DS5":,F"92qj?ZN9E^Ik^8b]XR@GYEbSEYNb@gGBS&&\+M@()ifcT1)Z?N,t19n"[Pn6a\uE7`BcX,;(+(Bc4rVjHXbe":K+a/0N/0ijMt5Q6l0Q%CmKoCjKtimJb^\N^$;Bm!!pF:^[[M#oV['6)r@(9C@"`Yqoe%XB63b.4*4P6n<JF>[.b)7Flph.:M!VY/.8sH2T<j^rEWs$JNHn(9:7XOO@^ELdR?Pgn=.afSL:mme$T*.DGA<+g>0l\qf\mC2ME2mWfn;tfQ[h=bM!nKi&9+c6GtY4Xfl*=Vl4ufPgm&X'.l=AOjuR&cW+P]nPWCs-'gN+jfUI[/;6pN7.ft;j+s1?OqrS=2nbg@E,G&jkBkpTfZ3I;oj@_!KjoGSq+'qLiLe.BrUE[ppSUN"*S9k&%AC;@%`t]FV9!6AbB70#k*lf\oosU([2I+rl0#9IFi:rl4jd'smeIs]?Q+AQo]GK'I`pN;@CYpbgD8YiAbO@?n5\O'Xg'g68E6]gVOjVY3Nf'1>6#/3a$.DTaNER`33!k$eT0'\-9suf#m$JZ[[m%0K>s_mrJ/.7]cZ@P^\=(1rr=\_JUOBIgP6ra]*kpY(joTGqsS[hSiJR<T6Y?-O4`3FFD`(gO[g*]ONhD.1XsWK<D8R=!$$?m?\[=AEUVe@?PRe1n]TJN%Ge]]2frs(h)Xco=0Km:4ic,8?SS(of"*,?eTi^:A@"fnW%R5JHWT.&QDXtBW1DXFl7lE*VNJVmP06E)aR*bhS_0.phXt4N7Jt%eCM`J7<DQ>:0\[Zo3tD_hCHoK25@a:*,tD+!?'gYJh#/1Mgj/aBMJ'uC@?2q/RAsi*_X]S'LE>Z[]Y7\LQ.qqWF07\ci;8FVj*EL3\N6%?,M$te1lJfBl*Hph6^Z%a1_!"+"Y6m!1s]k>h!o;khFBMjMm6tN;:eR1kE^s2O;7:>P)qbW1uHgFrr?DTpL&L?WNYFho!A.?r#k8Fg[QYsJ'g1KmB;TcI:Kg3[2.WRq;'(YZk$I2S^CM1[\_d3gr;P`OKQZ4C"97oV_sRS)o3dPFb=K-oR9tfa2G0?SU7k-"*snHE-F5?!:?5'PFC:6fSi:$0h]"$d+nH=i58-TUWCkmlKYD>;(GVA-DEKgics,@%pb$\aPeifdc2_PBrYrLSk4MY]#ETr66l%O.PigiD/_\)p[;X>ilCUurb&tq4skZ%q.DAY.!OkBcKlX7r<q,i+L/O>QTs6t4aj^g]168rm_ZkY.dV!ga]qOM?Q4`T2&-j:dGsJbX(6L)bU]&P@d(#W^%6H]\dPH`p.siDo#GY9mb[62J_P9NFptig9sejs>N9I-2g.,ueBq3=70P;1M]Ej23bjKaOr3Hk[%D4<(s>B1C@2Lj2MWQ%^1o+_W9L?`+S@&eR\CLe+t>+n=]8E*klC_`:WL4s<IZLUk6(=FTKeh+iVlL-c3l4Vh`\p28MH\Onl$2fNM(.GQE8j5qm0ekF*6,o52!mBc(EZn7e0r.:QMBu6^MB(jWg(kBg0N1i1KTMq*ENf1%P>EbB*K6j=u"VYo:1CSR(%C'U3]pE9&K'0k^4"2^_Uda'iX;qg3X+rr?@U,h.q:j2_t0Y#h2bqcpaWF62VlZ>E=]aYd,$'Qr]@^/cX-M&`P8Z:-l\UZi7-daok-HT](4W3;cL./s:6kOS&n*Mr9RZ<O=*,I)\slqWqmmlG<r[J)"SMdl)aU[LA1RARd?]5[T$Ag8m1Q.QcV[IM_7\p/Uo#DtuR'[QdZ4E$J?jmak\%b';u!PH^ohHRn2[^TK%pEV_G*bQWj[IW.'g)H5#"t;A'm%kI]^7rAVdO;+dIc;4;pmE.TX1r(TE]?`42)r_Wg3N6Cd_);6jC&GF<_D<RW9UHf($=*Ml#2%F=s"2<PQ(XS62@#>rrAb,@atDX_M(1$lor8]#Ltn/\oCpqLN)tS?X@SAh:IL[cJeKIFupf:6NrIlj(T7V.^t$J8P^t9,*8qT6<j!#q0Dnrq&f.iWkLnrr7q9QD-buPHOk&g9b,gPbOuB7d(n/oZ1)<ZfNP:9:?9CA=4's$=R$eS.X5L9+1EHZbS[Ie\2(S:/>:qRW+W60MQL;gWA$eQ5j9.`>`-ZW@q>Z?!)J(;[f0C$c.hE"`?45<P5\,3c51NZq_,00)2rapq#0c8L7XE_D8V[ai<F)$0fb2p((Y<#^UAW.j,?si>cg^7)hN]^3QG\0i^mMPC7!m$o*+q_d,-X[J!T9h&'\SXY3j<kB^ksnhA!4ndn,q1al<RuBM`5Tl*6V3pKl_6e7BfCf?I#*>*gk]Njm1%2qd?JqjT=#cSj;/&g]s4b*6$D$GJuOf)e#:N(k<bfHUqI8a1#Sl1_IOrYA**!,dkPTD5no2?*Zh:N(Rp^YqXHp@%?4r[]^-rrDLDfKSG@Qi)1Zrr?gq?i&;On(u)\jRKMPA$Wl.2#S)m\f6*23lATh+3$M@U?UM6!4Q^:U<;k@d9b2eg7<q]Nd?t(50\:F'WG,oAX8J>6HcE+'RuHuf\a<eq(?f%fBU'"PM$tIRHZ?SVX(qKLRpPAr#YW=n(9F59%9/7d=&Uh,(XB-Y]q&:iqF*E]JVPc%ZVGfSt<)YI:CXMKEdI3cVe1eSh),grrCPqpTerA!!t^cBKmbkBl2ap]`[jF[^VT<pLd9>m?uV=>;=d69"VAlNOpTS[U/7QX%a$55,Od(@W("i9.\K8(hfpn!?Y4T(LQ5Ho7OT&8R_TeF[*sLrrBS'k@Skni7iUr"d.Xn!7.OocdL?\]^?)6Ngc,EBm-q7D8@KS+p/h<H[SHdYH@O.ITAS-(/h#5MRlr"Si31s?OWrDOulf;&BbWu`s)G=g%#(BKf/l10Rh"??_>MR]0F]4lRCFkrrCmr\_$dSef2eMeBu7GG)\@*<EE[K^!D[mZC\3J.GJP&H17"g@rDb<@UMQf50ZUhYk`:O4sbS3WloO6kcWV;Z.[ra[.X^Fgj"+Dj3;H9@%)N(\oVsje3uK<&_m1l>\&jkptI58(2YGR`r?%`c\0*?dEKs<e^VK2:FZt;L]V4X70F3@'I>u]=SM9-"8nq!+!U74bELq/>NMbnmk32e&&5]b(YZQh]!pa_[cXKkm5g-,qh3Z`$@$:L@A96"m9KSo(.a`KrTXW"]<`,e5F:e&\7kj]oHf!9mle_+4*u,:C*!&^1V9X5k+Sj5;U;rE]7-n2ids4*2QdE>99"2H8+'9]+&`j?lYS4oi3BDISm%TIWKs9Q8\`OTW$Z&3J,fZ[DA2tkp[<8cm,NG@p[<Smn+^!<E,VqAhol2\a7AEHGtFdL;!hPh\poK'oe/U:g]%7!4!qSAG5Gk@YQ/\Y>@VL9qH56(f'u2"W^ucMAC[U@r$ZWjpIB.LZhV6'mqpZIR/1&'$Tn&qdkr^Y@<X'iWnDWLOJ@]QY'_Q4Da;gsl=<SalBX1g_#DZ[R_(G4_*l=7N]D4QUt&OG2*?2LI\Rm&$\*f$IeUUT5kKh=HtqmeW;-AmeMp`<^XlaOY]e&nD&ch4&O7SZD2_IQ1)da=$E0uJAKD&UXf6_I<Rskqd^.%?Z.fYcqTESp^KGA:VV$.G0cN?[[\a^OD>G/qUPL6]#sf"7FVPrO4SABl&Y>k3]T^i9niJY>0cB2S+J>O-U8C2;;SsId-ieR':nX;+=fl^nUmq8UZ$4iQmSCTEq0M^`>("BXn+]i]!7-\>pbUg>5N=,6mN1QeKhGM&gV[c)De7XnHJ=1IDco!DgTJ?TW,)-]<=:'o#%:'-3G2NqGnhFXO*_s[r/9npkC<'3Bma:TICmpUQ^@'"ORQ&uqhG7`jqnQ%EmkK?pfoCG.k=7o\>Q/QPeKFY&W'pY:)1I/b'JH3=(,]K`)aj<X*Uk72,_@>n\M1"HuYBidZOBECO]4MhX1=CkF_>>rdQ$5_rL1aq6SNlcM+mK;TmG^3r[Lmrj(D82^c!^Bsoo3>:$q']5MHPc2HJSGJ,EuSiIk+Y9/n#`Bl:9eLpr;@u?Rf$i*`k+8N-g6L%:unmAO!!1CT4GFS83/usA<I?V4Mj_b8.G.o\7[rLL`fI[$gm*267.I\$deT9/>;U@r-&BrO.6qAS&Ah]_##t7$]PBPJe9c>lX76Jqa^kFpL]Q)%N>S;kEe5_*[+PW@fmru8=KKkn`J,-8F'$'`Z@pnf<GJ#ucIqJOe\nO(Q/G'lo27i9:D8!K">LRJ"W[_d2`oD8Le_O1[cVA%^VohM4'NTc/*pkcZ;gdZKr:Kcl8_JI2(QH?+G0A]e5.BmIHn5oY@<,N;<]^n]T\Po\3Mrd=Nf-&OcI0fc3n[uF8q`5P.M$:mS%)gG@FhT'8F#I%H:kFZ.iZQcOt<l;,c\s+J<>:!p>b&DQg^P2bMW-Gr64tBfJL9-r7(!1&H!1?&%'rjYh_CJZD5*IZZ9mkAKLY@eUGfElV59\UQ]erD+,IMS)TsW'[arA$uH7)8eV')plG?q^.3Cum=VTkG/Nj6in*\d!83b-]%coX!9m)qS*g&%D:"\#]t7.Io(BB7S6D>[l5t)a;'\P%<&&Zi*bu(no!oWl0&me-5)B+C9+ua3EtYS.g*9AZ%$r+4Ks1..rr)8JrrAE^`F%enr/J:hr:fIek7ui<27e:?pK#Y]G36^<*B*cL:uH=4bB2dQL>S<+A9O;RG?3GR4'+#DZP5C!qTNeo"#i_.8f9&h"d5mWZbB]::\-gM=;qhLXR"3p-e\M"-$o/qkB?MG?u962PB>q3`FJW`G)pQNA?"<FkBuu()``MRb[`/9.]OnsEB-(*.q<f<!;"'jc/Z9^d&-du9=cVDe?DLWeAGU)P=!G:`0Z@UU9,]#Ui<-/7g4U]W;"!@5F/e'D86"eILc:#q2)TMCULq+(<reYgq-91R^O69^\47K0sQ'ADUI$-Z.)h6EEhUBj<C7qRQ..DTFf>pTp&%"A)W3b>YiQ3N'0Q!-PMCT0D(+1-E,0s(3<Is#BjKqfc@9/0_EmJWARBR#3Wj'V(C%?E_f:POc`<$!d4f"RES)0;%q"E;%k3Ve0CD@BP38F$!!EP!1OTPIJ_m(T?)rdL4%SJ,Q.8MR-2Kgo_BBWI@8KR;mSYpA30%XpFTu@D7?mQ2D<9\T\+T\UD!ep5+83+0KVK\=c\27O(ruq#3Nj$cgnC;GOehGJ!s`gDOTr6inaL`X7dUhq$U91p/Yq*P$Bp&WS7@P,'ruumJ3\)L6<F:nQU>h;+VP$CIK`UF3h)bBBJd8qo:ca=^=0Z*Agnd"[%K4E>W_\Yf'KE#LO3M+5hSEgZSJaPPL_ro_<dh57r?(Hp@(GcA(*PnZk(`?[:gXf&,5&md,sF\&AR"`((=,bMb6[h6W$4Ju$I_+fO[sfTqf<<"=E(?fot_YE']hnb8p[4SG=9<T8@(Ch9mkP:M@*iM>6DR3p_]]71lamOX)O-'Z9ndR>m3r&iG'bXlGT!fh\c\2-+U]O_:"YgK:X:=?dh)3pT5Yp^6r43"90rAHn#n(u#5rrDgi5P&oDT3\"arr@`pr7\.<4]:EU0_/k*5iR*a>bY/RWV6!^U\R>a=%eC>.(4HcnFAu3c(ng?g0&Pur1\\.'5cI)X<5_XjM]l4WU_m5kK7u!5@H]q66q<u5MPpl<C@N6<iqsm1!^cTD>#Ps1ks[FQc.0.hH8<W[9[pS9rceND3-"lDoc-eq`auG&,uV9p&8o;2ReIdY5A2q5Kp<Md.TtSo^(D)O4ZV*nRE5TbI`(!E1@_QosWr)@-B>TcG@BL@Nh3uJ^6J92?*Yp5uK20X\-0#ZV5it5NWpU@rV@5m;M+Zo1(H,]XpD2jPJCU;m7,f=$7m[X`DGu]CoiL+cE1lU><?5S:#A<Yut+^3klC\_KdV3H@NECZF<#$>d\J&caqG*8nnJd<aR#5On;EPN/FYk(%n?S)Zt+u/an%WHeAMRVsiL@n)"$3hYqgCbcBe&(\8mO!/4,8T8<:INd;_Xn8GQm\Bc^:0&>;eO5QXFDiVNVM.33:'U*EX=*<JBB[p!P'0JT>P/SPL76YC-/N:ngkFoIN5Lm&498E;Y]Cn1Kd_cT_b^<XP>G#Tj"GohmCA<5?fiZtiC#..A">=5h!)GaG1YmmG0oaaH4S8BWq6uP";_0S@5M^D2UN?G8)Y`]Dg&D$Xr:q:=fUp?.I=,JZZIMkAc\=U]]s]cpHF\.L@<O;9<Rg^p!G]MU=Q]V`82ZmJO2TZ?/H>e8ZD%9t!/0q;'jgA(Bt?>q54cV%^,Pc*k1]Cc.[JUEh64LA-JfT%;6/92IsYoh"[7[UN)G08XK&,_)WmXo2Ek#,fW*Vu."8-(jNa+l!2mh6rr=2=pTT#D'Lu(Tc#;`qr0op8^*s!]&\r;0fM@]Zmt+Hf8QDuCEn.[e.b^(cFN[O6lL)7M=]o8fcQ-12gIq?p^ZPJWT-\r)rr=ZYJ<U<-0ff41^"M+aYY=@He"t,bcp^#pl:=r\B#iU%_8pZ@a\]aGDrchicgbki[C4fcP"MA+'oDUr.`F]_e'h(qrr?ElrnlST-i>6J,:?H?0i-sInXcV'53a-T#"E8QC0BYe:5\KmgXm1c/PSAY7e/hmBA&5B7h_:DU-KHg0;$;eZ1]!X+6Fs!ZV(4Ans#E&73R7aOnuPo2u_9l=.0s51WK=K`5a&k`UBY:,o\nq^=tZZBF3`jX?j,k!.]3W:m5iY\(lElp[<HMIkkkpoBW]r11[hko%WS]\`eO+Fo0p*`>8I>ll?:K!D1nN<V#0obZ')1p4!":`TF,_/*"]<;u@]F@[&W6!i5EX,&@e]2em`ChL-bUJbWm2)`t(sT!*2%`(ejsnT;<(9g6srY"C:kPlC`1\$oX+%SE=UW@HnspjGhiBjN4<AW\!$]^.YHna.A)WX:f\Q7G[+MWc07VJBq(@'14/#>+boEddiA^DXf]:Zq>3b\d3ikqDr_lfGqMR5ANLg=YXObA?gubs<:BQj+LZjJ=^k/e2(X9m'<MD\n%(2DRO7m\M[gb%(7+A8sEn8O&_ha8ssiUEprgNVbpJf*<T71lI59'AW)p%PgY\\u/4<O2Z5u07RZ5fmBRBb'2E4mf*8hNIL:V?!q#.P.UdK^HOl[p3lhq^Yq>Jc*-8jB7-u[0Dq\3R4`+g^&CM!C8]rED'%DEZ.-CLEDP)RdiYgk"(CUYr%/+3&&3KhjXIM1/F([4f2lHiX-U%p`f_2ap[X=>qsmC,GMdOj"o4XNU"oUeddZ[[g\^oF*#Y9ZRfd\/D-bi&F#A3r8h>/NnYL=f$sle=MQ3\6.Z#W]TX8U.ffPNN;3K";]^m\^oE&MC:S^Q0gIe]p$^=X_Xf+!<JLUsbqYU#o5Q!#fq4i>qp^pTt(Tb=opJ#9kik)g?G:mg=F8KlnD/0%4PWLfKf@\jo58Ul>*ZHt@[A`"hb>Tq5Mu,Qg,ggo0!eiB,rB>7LSbT$Ga5)sLo<N*lb(I$>h2RWT)/M2M"]`)`Nng_i<-YuH*8Y0GP,Z8r`jr(>Sql^u?1cuZ+K<?54,5JD36HV[=eo6.X*NP]j(V`9cmgNe+utSm+oO;`j6tjUc2RbMkPf@!Rm+/=OoGE8+8jiR\0d"+SMhE)SbW@VeSsX0V[jgU=_YTI;cYe'U:)bX>o"=j*)&rDb!ANqTB-aa^oDSF7T-SgaS_E3`0*?uLE/gJmAb#[*^VhR-8"'qn:md<-)j-JWA2eSNJTK05uu2-akWa;mCr/KF@Mq'orCb+&(#0T"JJ'6dQ%6Jp[;O/nf%LF^H3inQqqZ#!%+?#Bt<L*GIP"%6aUggD;:0$F)HZeh*VWPCN=7X[Vh!0K5SNXqm0hnX)n%ek!fVt0Lnk]W:Ru0%!_D/nu_n!T.+Kg>]q4[jS>pILTl+5C/s_]DTqHZ2"Ke\E-:MgjKgpk^F)a7`]!5=)==h%;jG>`.jC$!&jdh4b*0i0OnNt\bRE<.f$DDeC7o<qK!0eSP+(b`:>ll2%$;u\FofR`DfM]3p(mXArBpM+H`s>no4.e#/AI=\GO_0,ZJCoP%rcISrIUfdbt$7U>A$/I6G$oA.Q2bQWhA/^>E5#$(h0;6Ju54l):lBX5[Ed+k>u#<dd4][g,ig'7rdo+Q/1!fegb"Dh0Z=A9j8o&?;H9t]j4[qX.+"pRH\dWfn_(%N]8IsRT-4t>,m&aAm9.&D"V'b&E#(3a3N38<DP@S,*^+/N'tW>&d\Vi!eP@`(AI9>8%np&iBR>BcC5KSlZ^rcJ&7(l=`46/Tj"PZ#0#DdT(q!06(6"L2'eE5H0_EC7rN\^7Pu]*SQ]_cX^*MF9,KK^#i*O&H^jh*Ikl<Y"]"=8hp)VE2\0QLM=Qn#><e8;9t/`B/:`>CWNcn2:#()aP939%.4?r8#,2E)7(kE\(qMnJQb(a(1`PU(/RZ2HAST;c?*#TD>3V;O)tW)4gi,FRf]2u3$*=,Frr=9mH../!pkA<qj6M.rHqpW7So*R!-P*\mS+gO8T#b`Mdn.5,>B23A[[YaJGG[P23m.AJ1t:1cI&/HoIc:\!C4uTejMCc4H]-ub*Q.F9jS.A-pYS;39e;co3Xg0V-b?bGASUqiG+WeanECE#G:(MgP`\no<Dl<q2/u\`Gl4g>2"L>]kcW-elt0Tra^[lSTiE.I[Brg<;D9=.e&n<rTEYfa\0Ut(h>[H^&H6h,S,$B5moOVG`iZY*hu<[7^.h=+9@e?8VE.GjNpE70'kCNs])o`^;9ZG[T6"Xh9l,(!Xc&<*b.>"gaf5cScl*hM2u0t51<e@dmA$qtgSODh)meVGG"GU:ai@I\2I;GWD<.[W&9htt#+e+ZS'>M#Ppo.STlp6IWgKe3PfU5/R\jEah3)X=.HtLj=n:5I763-RYX`Z(G)RB^,KR]2?_\0(rAHk59fg>j)ufn!:B(=HfT+_^IJiuV@e<HDmsIh^?ZC3)a6_s\a7\V#<S#WIe9cM95-jV%V<e&FCDeEgNkb?9)NPr'7aY.6eNtL[@cObDQ4NR5m@CGAhu<["J""F!Y-%(cbs;P$1"Y5SPh_LM7qU(G&"PEfVTJ2<J[F``<)5E0YMkl&H:<r6+e!Ym9Np]SNp<a#C3#fe.7[MjL6A!Zj]EWN?cIQOWgX-7^T0[)^X/+h^O%V`n=*eI(];(\)u6!$c2Luj.Xk64Dj0!gn^";KikKF"T#8J+.X/83kG>m^oiFjVSu1?XX_.0g$b5]\Y.An`\NHH\@$e`>Q!#AHJj8>@o'>D7nbKN^5N1dPGE-INp/b#UT%'dYkBDA9MJ^TbkNd$GfR7`\<ZT(#W8)6Lb[Y_E;TVF5>?iA%)+Oj8aTl9eo2G&cXpZJ:P9E^f:KgXfd7hPp9)<:!ia-3Ckoh?UR`=._!+1)ZJ+ui1o8`4qJ97=onIOSBho>+<T3j9mf^(h)79bhmDBJLn\+?)dP@Eq(`C[H..enG4]Xn8me34sl;re\`@\SmgHF/rOd[Hiqrr=sljt54M'C#A"j6+FP72FqZ?1K'\7ul77eC%3*rrBV)S>LH=YD:=fJB4d$ZQ"sKDL%]lLPDlf#aV'V=k6#q@?j-lG=>7@;<'AZZKAHQWD3f$p^uQuUPR[R,dY^:7N9fq8\M3Rm$:S",!Y7c\[p'Mgt^fVTJ)HiF6.j<)bmo@l0MI5mOE^HfWEZQ;GALWWQjhEhoB,b,qIh/QQo#)RY:l^WJmcF=[?kVq-!^t1gJVS:;G-S!&f;f_tV\e*')\5mXmCLOS&J]FON@3[AV,T]*aH4p'XpBY?=Z/>*VF[XV@d8_bf%`^.8E$S(>;9P:2OA/(Ft1P2GCp7oH=`rrCaag\mrHIJ_]Srr@`DIlL5dIk<V*aH,H5r5#=Gi;(^h#,?3t[dK02#D]GJD6L6([!d)3BX_:qD:?o"M"eqnD^t#j=_k9^a%;`?f>BS(9i"Vb<\T"OO6.P>4oMrRJ)Tk>H>$d`6h0GXaKOA*98pnjmi3D%grm%u<Ao%CL5)<+S"F9[.[jH\WeD(X,tV/XU+moL9g%g,\a-P"=((W-%)sj?W_a9:6ublXQq4K5(n(b%"Kd<W")EKa]oauC;Kq^MraMEur6#!]IkKW6rr=B$?Q6F$aPNfY$N-KBC#O$<H_L<M\irIShb6P,aR@Zt=7;)Ch8*SZ]`bB/LT."X-^mQral2b)TBA6+'BTeBq4mKGiVrnuT'EEAXf^A_#HV\+EjuNq2P2t`_m2@JYWCSq'q;:7lF/n\*u@:sUih;12)-cFG4IkY`m)7S\]Saf0*dEV2$>f/e7G4.5pr8,\u(Zi9r-"<U;j(Q8*B3W^$NURDtm,#o7>Yc/q)'r^[S!?RCfZ7nSm#iYrd07[i^%W3eKYbBP3Kt"d4$(+5$/BnKt,%7]UnP@PE_=A(Kq$/nY+`P`PDE_elr*HQ2dur/f6JD%(L;csc['B=2`mH'QI<j`kcfN'!5J^+t>biCu[KngG2e'SD*BdVQ&2OVoVBc;mQF].-SKM+[/FA8h&7oI^(C3Zn>/n)!>Bi\0n-rr@`Srr=gWf>i@hIA>QQ;t8o/7oe]`>*J$^b6mX;KZEf304T-*D]?$l:+![`*B$Q*VXE2#St]BlWnOu*%$"f"C+Ilqi.iJ<W$&hsIX-E$T:-_mPPKUnrkd<96eg?/-,1o+VnVH#=NXA:7CDh1:60;UBI]aq_c_Rs_1g.XoV-^J'd[H]Gq#pq8JH;iF!e/]O*]uh7bNg%RYJDAl:+,d@mO"sdlPGlOFa.sUk_\)<G!LsTJI[:2?*[#"8QDU44!#fn]uOZl0.U!Vt.mhmR*[fUORHB=a!8=ZZ2@nm\MO:SbE?OgA<s\G?9'4NpECn1pni:=bY%.WF-RS3i@jL>fT1kf?6C3J'?O'G>@R5P^R'>dC]"^CHAJODS>SG\!;F9U<!96!J8$%bNA;@GBJ()BC)/U/f"bI77K2LJd@&>4RF,O0hPJec#*F6JYAPf8%^T[#,5H^76O";.epmjE^phoFd2G&_7<$31kT7dT)J+e?fXHLbk(i7bu`g=f_GWan<dGcEU8\X\N36lBf=a&dV[3grrCa)S[5g>F5WuH>"N_@40N=9/65)0;"@%H><MCCm2Sdehu<\ALWsY=cL6VB:>4Nkb\ef5G0]<qoq,dDiFA/^4^RL0Zl!&Rk4*PW1W`'YT%i"WK!!r>n\J-TYp0rKm;]J=n$qklf$&r8;,&>_=H!h2:D1\H6jDa@O\2`o_'FC%\paQjJ'Aqqa32fk;bR%S^Q^)1`q;gng5sE(amYIZ#tljNcMJT)00?f0Y^)(FR?uTR=06Jq3bh?c7ZI`!jS's(ii%hcMcG1NI,"J;o!d[%bkODgcgphUd;1DXJW8R!]?4]9kM*ae7miNr1t^$2PZ\dVGV,=R>7E`<AMd,GXj#(t1u8<UWhdYmgc:mrG\p0],1B7'^-a)\9NG/=<?"SUUOcMO?o><H8@?#&Yb1#qntH&.rr<$[4*Q(lprWI(IT$*EhjkXmEda5**@ooF)tP5^2^[22YZ,K\j'/g4Y@_tX!-iYcjJp/Wkp2][(./T?f$dR?Pgq+Si1lD<h`h2B!1G"JhQYcW,.^SGSp-fRm]Nb0<prc;f"HtolDqg7E0r&MbO-jNZ[puHL"X(60g,_%#Ea"KGj*kY(nG*&b0a/#Cl[<,pf^70R/Pj'aN[3o<)6(ek%Nh90P$Ec*CW\-/lb?W'c-t)HOkT"I36Q!q52Mg2K+7n?M;TNEI0dY2AYMZl<aGBpfEs[%4>RlnQ:ao4.g6)>;Y"]G(05@RE@XG/5rpQL8jICrd(>-eM>jVo#1@O8b;9.2E/"K33""2fc*jM<NnPlDdusHiDf]d)*s>*8"7:a;^@WjmHr5Tb#?j+P*\#3[.KqmbqYYUNmZWT\T''#aK\`4,?%X]Qd@*K8+K)h>K&F:(glKE[l1ek]iR9cjaZl?rb+OB-finM^ZmK7-+pr1FUqUJ:OQV/Y#D>Ym!EWZDX7k1YC(`#ffamhZF_'"md-JoUTB`mR[P)V/C;'cfmV7;q<tNL!V:s>TD)^0%_hag\GeJ\p;u0>X,4YoCb.VUWc8tV@+@CbZ)u`&)f']d*Pkq[<Y&,uL,>."NM.+p@GOCGEpaCoOPA:<a`1:eo@>1(9c->jBoS1R'+FHS_tqFXrg*<IAr#NhnsTK#+3X!1pAY-gQ1:LBlhnNn.@U&%Z1;1k^Ug2N[g-Kf6'g4$,*Hfb^,I+e_tF=VpNKt^HAja$)V(IqEqjEL;:AK6[?JcX;Tq,uQhUsdbC1`00'rBQd_F$Sj>V/@\qb*&mqp[\],r]>,c.^!gL?aJcKED[ESIh*4#:S_k/UtFR\TXY6QKm?iL(IY=*9*b%(=mGQs(s0R/Q!.YBh$hU2"GPS?'U71/.5>eQ$QZ<>PEK3<8W!LYhIZrY+Vqe[J'??2-]EB(j4t",H[Se%>K#e=F[mAsd'^)ksnP:+pX)?GaV<^>c-]<4f&HAl9P9@3L;8nb'"ZYu<J5a(BhD:Zm1JkGQ<k2n&^Z`FJd\Y.%\C_!GK_KMc3bPu1@Sk&=P:*K0L6fVgU9N/GY<+cKnS8Q'"($'$iCm&e;TjMVsoPshaNRAm3>@nK9YXHCf-F.c'b@Qp6Fg;:bb^$*Z;k^FoWeEPlR3Uk@m458q1F6"]qp80M'^1X=W6=_uY?ud80J_qP!qbM!MhVFpB*:?)SA*ZkLMlb1D+K0q\*jisue#;R+r5e^JjJQ:51(TC.FkV<oEh0bpHgZfj10ntUQ$[5MFa[\Uh#6]UYZjI*98Y`%Z]RtI\>X-tB`;\Xbu.H_D+#Q'GhfDRlbucQAfeCdV.a1u\Y7C"Bf8SX3"RFFeb8R5J#L'Zqqoclq.G(Nq5NmO@s2bHq5<hj3V0FrDU$jjbj;IbSCpWBjk,q=/3?\h2XD-[S^.3#Gq=L]-;ALE,1\tcH[:&hkYIA4$+9N9,NPK>>c5_<k'oUVa_e-Y;f+GIPA=X,Z->pCLPc;YANo3+.`e!kUp1]EkLeU@`oV3Ee0\6Nq2$A^?7B2&$&&H6O:?,V:!^S$ZS,rqg]%8gHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2('&,m@9rr?T7n:1H<('CeUpYA.(=V(:+Du@\kN*l@GGCTV^nTtR(DuM?@O8=j.rj32bp;-6VrY$OUT)KQ(6gmhGFH;q4IK#[a0D$&srr@#HSpSA_G";BulCFic5IqeG+7Ca%/\ea/N;]"SkY3n\T[H#qg3tgW!$on_Xms$`k@jkqZcho\Bn)qMOQqi(rRAVo4ErHarUJNb%E8;&_T2Rh/Jt!2nK53:)HP5'U;Q6aL*No$pD&Xgrp]%-qn.=l:PL7(E;AanQc0g4%n(a15JVX?]s3'Ra2<E#6G>&<YDiJ]l)1gN5lUh*EuWFWrffKRX7&!]C]!##ZFcaqnl,MKG,fpKnP?Qi*^aTb;9./Ap\[PVkPiW%7d[@Crr>VPbI50tR2sCVrV59VrPn!AIs?%bq7jD?QgQ?26]V'4"?s/*UL0qJfTCj+rr<8D6]_,Tl[2DWIDndjcfLFfZQ#JL<JU>[IeTYir$<`iha@=hJ+18Aci+:-U[MA.j>Hr;D^,"trr@eGAcDc!pqV4_qW%Q=Xi(/=/8Dro@irI4p\ZMqrng*@Y.sJAks,.Sh;.PWc^4Xf7IYBu!"D-!rrCsHTD.corrA+\Dh#qK?iAX!n)"&!IeNF-2gb;6Sd4hoL+#:F?lqDW(o)d(Yl8dh;C#Aob>GbjH0$N+"!mKZcL(:;@SOs.oa(=K*-(uY_M16NXD!`qh>[I(,V"Z_)(!G4ZFL;B0-m]'O4:E[npQ*OG[%NFp>bnQkP`$JrrBMlrU4JCk5kMI^,pfmXd-4:hYV)-G;mSQgS`1ge/\Xslfmr-D#G\1VNuh3Ec2E-2',paPI&P4[Q6r/I`fC6+]]kKMNXb%lJA-*^R/[*0'WB9jnH3lgj>LuQL'(Shsjc>f=atglCjrnAY>]b$;%QcLG:)4HL7iJpXLci']3b-;cbr#VPfp$:sb#fT6=&uQt#YVoi8C\^=J/W$LSUYA<oP$_\T"TCrMI^)]O.[IdAWKr$mom[LS(s+e.EIo!d6jMN'.[p<MM600e0_+YibNU`t1t:?C4lRi0pa@Z*6B!"D(<9Pqr;=-6sj`h]Xb7T/rW;u,d-Q,Za?f];hDn7ub#.FtO3[l5)Wb4!("UrV(V-)-kdL!<J5S0^'g(l#"tXVcAO)8pSn/;i_OYeOZ/O_,]P2Y7J:,Z;SR28NC#9TdE(&VgJR)obCpXmb`8l9kO_@g5htjCe'SV9W.4Pg*-:3_g+':)G4PM^+IAI<TLQ$L"I`N[UmeX/f<a;,L<q=9&N<fDbjK-H7P!4,`8I)*4Rra[8MJO^otPM'.ha\inNqM-!Z<`f\:K<)a'@Wi?aP!!fm_</).BLc]?j.0D7>eA>tF9jtiJp[;f\k)96>EIiKTrrBt:!8u3&mesA;ir9"gL;#>@!9)W$J,]Ll?L_nTq3h#=q/(rf!27+'hpCiKhO_aUIeWHPrr@_JrrCg;J!r%i(`h<0!5VmHIHhXHL;3-:?TA&cnC-a=rVlj7%q(H'J&g*LJ)uYkrp4.hmqf`mb4e^0/MF#F*rW+YcaPs9[=0UCZs_+f1fUN]r\86HOOsmW<d4'@lAj'3bp=PcK3$;=JS+#Qj?[+orr@a"Fk5+!F4!X9fR*(],2;WuQl9X>D=ikDmHdh(CFa'5;f>?gND?8A<6CL1O$%HTjaF7(%)m<e<+CSbre&1NMR``%p5MG/Iu3pgImm^kK6nS$qqV8P!5bMGmDU/-^[g'mpb;\2ql.?nOoGE![eW5h!0gF^!.lGp4ehfar]L+nr^6\cpM!(bhU!A6PRmY3=2uE\5Q4'#n+#9VdXT>:rnX-oTD3SQrrE&rrQjpC>^sej62pp:X2"BaDgqBdr13ifKar;#B7.AJ5Ki*_1&OY=q7H2>A(G9ISUoQ8j#L%lq!kTSp9mCDS"d1>)3rqhmQHoFo<g=#<UL4=agU`G=,!Nl2Fm27AoQ52J"+blmr+;5hh`GuJ"UNT9m6NgW6.tTcGSH58[5rr[;)pgMi>q\0VP\e8X\=XCo#0I;3n0)iM`QP!ZEjtkCQ0[OP]Xf)*'C?<uNjed$Io#V/heS1i8sRFL5XNUN9o,8CX4I<PeFuFSl(<$3KLrkGo-ag<]J:o+h'knIDInhmE6W3r]2>*ud8hV<2(2Q-3]-h5\P>:@-YYmE&$"f8u;a)Eaj-4[Y258W\3=]RQD7`;XH?r%lLaJ!aO%na^S,D>19_X/3C;APCOTEk8uh@HX]JH2Y3BR=k8ZP%9TE\tU(3e#l+XfeL0S[s5^%7WTf51r"*+H3t"#rc+@=AZ@&5A0*tV$pjmn++EslDt426!4Old!&&9g=8Y;^mk`hhHhgJ;!8G&u,Ce]"a8Z/-djscRfq7g#@6a#`J*;+Nms:[W_Atl'Bn%j%r%L;oJ+#h]53Q5M'+OsA+4&.Ar&"7grr@6`L[7"c0DH-LrrA?A+7q]t^O,etqqKTPh='5!n)"$3hXqfdB`A)%P2D1)0Xl5tn"5Ctj8G3;pY@\AgP7Sk<t$ll*VYT^W1Bt9arRsL'Ut#\nenI<(tM[FA?<eG>$/$N@l)B5f?R1Q&(.!mpBK^G?]SE`rKkgYcHT@UaR.Nu%$se./\s9@VFom'Tb(fo/RD%n@o5-Al6qq",%LP*7Z]I^4`-5%9.aa2DrHtE'-kPq>n"$&Eo&[[e$G[G9<[MQmsf\`+6=78e\@JAo!SI-4+$cgrr=ilbIK\NY;[h<D#TUP\K14O?[:hG@s<)&a2QP4_dIXg>b%\Wkl()Jr*;Fl)&f[_+!"9#<>s6+7p1nS+<SeqkBG+1K-)kR+3W-q`bRBC2MPjgmG>1eeo#m$DG6s4mL@qEM:_W[C%"`PqqUpJmY8n]`:UI$pp'IT,kU)al09]I'3f*hk4\Lk2TF[<8`5bVW?Z+fo"?T\g[1hlU&@m:c)jF%fbE4F`D=2"^\f[Url>c4O8^a82u`W%de7XpiCk?e8f\B@!/h9srqgR(mIRc9ildA^!4AL"!8L2=IeU,9nt#d\[on245Q"=gLAq8O%_ZrOj?<]rfaE0[rrC#4puhYW^40dB?#@@OpM_5JV8`H7mL108mn>s6+86[<62prDrrDSErr@Vn%I[NYOe;@\:K2i&g!Uu>kHWm\]W_7X=tf\gO8f48(&.00rrE$6ci3uU$1UOc!#G^+rr@G]BmVaFn>6`n,n>\0!6'\Jrr@JUq=aL95Oi=*J(i8!mNkZDHeA)g:B(=KXM:'nr[8#hJ,T[Z\bC+d!^H%*^)):YVYkN8!8g#I]rng$r-PpaqblGR!;?[.IeT[Gr$ml4I]iZpJ'1?lFr!-5S$?tHH1Bp9;H;Y,;s!S^LTc/-DlfPXRKck@8TU-h/<E4\a!??`L,5eQNCL=jcXM0C2tK**=kK3ANbCA*(=;=deNHAQ/3+((^<uD/d9F*@N/6Orahoi8UQpu!9#cVO)CPr>'UjI+J?";oSRJ4R'X21o1/bJIEFRkq&,P24hn@aQr%2.Ph.=r_pqQc1rrBk#nuLI3rr@a&J(Y3P8,b*+`W#qq5Mk8H?*F8.*pjdBY,VF$pBMr3hX:CDq'l=DgS@'#0E*F#!(VP-%uU*o+3RU^h>[KEli-r"kH$oBR%a5Vg7Rp&@)))18,iQm=5U^UrVlj)ifF$UIl4FkQ/7ufjM^aL-H+Rne)hck"%?5?59ajO7a.u;.7H+-XN0FH9hTaog4BUIBIe/-2uG'15Ij!@^(^4#gh3;:2#CKnb76udiaeZipB:<:\PaIL%7mFnYKfgaq(<@(>rljj*m=Q`-et2?Z7eo2(eAYe1tBT:NQ$n-Ud(K#pMaL/Z;:@>Ibar'`P:Z@rSi0Nh1pKsN.:6PfRNg$?Fg(9hIj'@WV]?f4d>sH[@JuLC8psrBE%u2'79`ZDG'[9rr@lT!3gtIp\'BKAc/#^mFgA2^[T\-^\dVHa1&1/rr=+3)u`r6rrBTP*rYP2NiBnq!5hK[_S#L;(+@dPFI2S"QZ2s)!(CV$W9S@E.jLC,?mp$E!")]%a*b>K%tUO9$&TW\Ir@jQV5<"'NW/uh(]G*jQJ0`Z_tBYF8M^;G_Ne;,C$*J1_F_9m<7I.u&1eNDrrBK3'i'WY7o(5%:\h5IVbca<B"TA98Xn:0l2b.LjZom=ZK0sm5G8#VD=??"cfaO$hos.:p\t4F:ZYf5P&0!ml@m(Brp@\R8ei`tm!@B'ea>Dt+[Qd@Z%!^=^Dg6E,gF8q<fI1V(s98cCU$J&=8Arq0DHoRGqs_J@16K$m)g/Ob=NK>WJ>oq.TAg3.o/O]4!'9RS`MssGsr+BQd<=\cgNChge5::g1IB^IY)Si.Y7M'BIT1(r`f;GpV$*+MC9[+#U59G+cR\#(m/<c.&0V$`=ute7iZ1B<<*"&LV9WrN]<e)U-t"id:81re0K%RJ1;`eJ>e9u^^^A<0`c.s!,qr9HhY1Eq>9p$HhjT>!5aDOHM@CQeaW`gme)>W[Hb'T!Oq@Feu`T<bI'8.!-5La04-rt#jU-0$N6`,)u(8`TjXZ\"	KjJ-Dg!':,[O'A5qM!6U7j?>![[Ag,?+)^in:LbA^6E4D%#s!SeXhRhpi]=1ZdWKL/?1%M.rr<il[TL^]B=Y^gBih!qgRAD(^7Wm3^&9KFmZ$RZp[<S*msb$"IlpNgFoMG]JUHV[!5ng:k;WD.rTY3gGQ-S?q*G#\LM+a?rRlN#G5(pYr4i0<bPqRhhYlnacfW4H!,f+AAY8aj+#6(U*IAa^aBq+1!:5ERB`A(lVYlDQ!8g#RI>XMXr]T':!<&m;TDO7*^O+Q?rXgmb!+ZE,]DhjI!iQ%uI(r_ZVZ-Yk9`G+kP)"Gb!91mjrrBdf@s^Q82uHg!5PDHKqh\&9hTi=r"TJIU#A-$3jfAC]/^NOPnV8F^]B<AL<a[j54`c+g\qd?\2&83XR63Z[,tTC77dS66)G&'>2/JT7_r*gkWlqME4]O$;=66p_Doh9orbmO`$T^bdjYt=J<DeUsdOn>j?XIVseMS:I<o^KnO?=1hX*4G&(<ckbLW<kYV4Sm:`B4_oB"+g>jM-7R1$tCQ>bm:]74g?IFY_%T`^Yo9^JZP1>2Xu#Fa*c@qVV8d3P.MA#KhMKq9eahi?)(l,pq*pH!\McZ16_S/%7G!c/NC&NK6A]gGOD3]_;&BX)Cs7DOR"dl".j%Ckem&ZjN.&*Y:hkQsS#9D`RgtKH9Bn^/9(j`bgXa0OQRLqo>H-K4e1rZ["S<GF$mXa5L[egQ)r2T+Nq=G%u>k*eu[UGi@'t@-ne,DKn+Q]72&(Q`e8*;2Cu]n^K6LOuaK>$Q5O8EeHtL3b3+5fCA=dmCW?1Jc>^f9).HH!/LRSaH-<!46,#o!<,<Wp?_4;rrBsC\,QI&kO*h7?F^"8O%P'(>??=BAD[:QJ:HN9J+jRGo3VFs_ZT('rr<:j7=2#KjNIQ'Dj^@brr@eGb!5k4T!%dFfUq^5DGU(<R/[0Bboa]Ip\ZRprlaX'C&\1lJW]s4hp7#Nn+]b(rKVlLhu#=rrrDfSj1Y>sJ)^-OrrA?4rr@)ghnAsurU&k9DYNUL4>2GfM>mP`7dn;b<!TXV:q6q,6$YXTk+n,q!"D]i=J)Q<POD>ON[h+0!")<bE2jTmgYOMn!"D`Qq'K^Xr3I#-r0-IZ`IH+^XoABefan%uDgqHQ4nlFhZ+Jo,qqo*ahnA6Ir2XQWn%\WurrDXim7@PSQ`%8na;qN]=Ks]f7@ic$_W\aon70\)eA*3*CfVo0An7<#VKF@*X/<#6"Q`t@rr@`Qr9`BZ4Krtjg?kse2'E@IR8'Hg]"=j!Ub7j!,+-_elZk!'Zn/dS+d=,(VsescER^RK/2`QBo`=!>Ndre4=Qr<S^JB=P,_%FX:Z^L6!",.n@D<8IPP?e4r:/J9T(D7FE'lpPb\p+bFnlo3Vo)E8MGoGdf\OU$3+sO9)@[!TaAj_U08F;7&:^:,bKl2drrBr[5K\ttOmNU=8#4R2A9T=f6b%.*j.I;u1colA1VE8*+Anr_fa(DAB>OTJ\3@jV@`d"nR>ItYf%O-d,O^jFqItdsW)<Qp"o%J$J)t/rI/X'FKd_F.+.]eD4O72Y3SSP$<9agpO\:\,ca@fd/KT+Q<uE<!MEL#+W->C27Z>%#jpu^3GiE:!_.akMO7Sq<fCG5E)(h3Ff*n2\f<kWhP)bkYeO*_CjRC\GUbbs20n"DZCE0$`rr<uIF@JgHD7Y4VDp?=i2L9aU@iJ$iZEL=rK>rBaP*T&H!)Gi1p[;Xnq+anLLAq7-FFQ&0[rW!6G=><OWbQilQ1W4C[q0A_PB>fP.cI4cbd;UBE06n$imo>eKPP&In/c#gJ+0+\R<pZIE%bbJnhq>X1,bI\RsFCMm"`Hc&]!Np9oETjMF&Y_KqfQE:>8!GfpV%fT6>7*$iPJ'&EF"u@s]T`nbsU.mr*.,?i8/t2Ld4FNt_GAq%o1;<j#LX]1]8Pf4Voi?,+!AHVHq-OH0LQ.''BsBP?r2qANG7alMb7L5R-ITJJ`)e?maF#lN3JYL=Qs3egtomMa</9%W,n"(gi4]+m2(leadi8nk<S(P\feW26>gUnji<VQI#"Oud>K5eAl$5n(VJIm66.BME>b1">&>.H1B*W0Dnf,6W]$<*blQ'Rtr>qqW97T?GRU;NLE5g=WRfpsIK]%fZNpho8sjO'TTQ>JoN?pVX<6Mg+Q)X@@"ii5B,#+"^-P`R`F0"\q7a]4LBP/;+LJ@%+*e88hUYC%;f1c[=Tcd.T+cFaqG]L4(G[W<QR<DB@j;nF']&g__O%nmf!#qBM'B6'.e>VKeu6SuZ_eWN+rr1f@*Wa6b*CPM_j]26*=E`Sbb,W-W`)r3[8[`kq$c/sZpB81Idk_[\sVhYll15Eg!9mp2.W!",h'&%-j\p4a*hHg_9L^-pBBLM:V-YDq4;*U1+a\iX5$Eqlc;LW8<C\4SPM,Z-*I;a^kNj;'#0i;R!V0%/K]c[3.*?.lp]I?WC;bVsK>mu?pm_9m,$<ohMTGOUbeOJ'F"W3Pu>b&7BV/85N#BXn8/8lKLq=VkRL8!'ZA]#9W=<)c@+`0/7%N0[Sr<DZnX>Mm,r5N-U3o/+4KBDr_i,Q@c<U?V,]:\[l7r-ppArrDQ;mSEf:Fm$En]Dhj40RrZ5^]'"bp[<T!^O(9R)nl.+cO6i%'E/daP#PFHHO%!LKi"GTT?B<AaWh>s)P,Nc5>k'#hP".&<I`t'25*tt41B^IPQ3R*_QCo'efU2e8O&AdJhV\uh/E++;uZj1r4`-uD855`r8<#^Ijg>FgYIY?oQe^WfY*JOR)O0n8Sn6\3^(sE=Ui+U5$c!fWlsI(9RbOFHXlia&BSK0NhPEHaCBgjWbE4nJ)<J?Qu>ZJ0:o\lDXPTDb&4??]]q7/*HBYWG$8X.md@-oa%7U][X<d:H9;tt_LE,o't)I8bo9VOO[D6k,PEF$?-bgFBi98]o1qAXV5/ou,j^(TZ"EXK'RGM22mpVU4F?h6Xm3(Err@a?rr=`)Z\Ij1MmNBsIk0BDhDFjbNL`AiRt#SSB?3[<Sk7AALG<#@1H:rsM2rf3'867!hBuu9Z?lN$4_Xi9T#Bt+kD/WW$]a+K?Z,dUpc[4JMAf`[h5'BW:4%<\jL>QJ>+/]U:'W(2\`a[/8nJIhaj=o#b5/aWWE\)"R]!B2;5HZ8@WqDqTKGkFP13PMgQc7f/>s#m%^@,Fp[<5"rr<@$`:(nTo;;M$=>&(YFF3J_Ye(R\nNDrI1"`Kg(-d(_b]h5.VanAn>n.Mi7ut^Lkk>kNL8(t'==N0_SL+rEBW;bJO7F?bh,plC:%Ohj^9c>dVgIHI[q=!**R@5C:Q)%(H`E.@YS?ti4\La0Vkg-/;s!T?btsKj'N)`Q"B81t$')Q!PBH:=WK9hNO]ALS.YLr:>a/]#![q&6mKp)t$iB\45;o@!jA5\)lf6;mmjT$e!R_q=isc1oO"QPf5u/!,kW06>\@O.Loh$Ka?15>$R00JGY%H]gM<j6?Vf7.&OEu[lmPYe^Y-Qir,>!`ia<Y[s'RNcY.=:33R[l(ij*f1@P!oc_l6L7!@X?30?.tN"o(&#cj4+698FY"8P(EVFdXS_irU8rkmr'jhGJAM#id\g]rrDI4O64.U!/:a(YPo%bMYF&Vnn%h$\'06lrrBr4jWFL&"]&3H"El0jJ")Z$=QVjBF%>]Ud=9DJjQ>7]O8)a_<qdt[Fn]]r:<*(j[JFn:pK;TubbXT3eBCmqa8GZ&g"?7iZh"!oC!^C+.(a,=/kT^jd!_`Gbu0['9c&P+hp2f"_t@[6o@Ua9fK2`Tp.j9)g_X6S,@pJ5gS`mIlQ\1X2HOp9g.f&cZ5MF,/S.X7rnPB!67S`!66qt/RRH[=MfIejO0WK"WaMg,L5%0`'_ILol<+"LP/OUndRL<,9\POO_WJf+II@#/o@*\L?*`c,`GbNIQd+p<79Zefh9kd`Ej*KaA&>&l'!<]Ye(31l:0*[XL02Z<(2bPS=*7#s`5/QkrZ)s?<rQML7/m69+-Uu=C66\/SF0Y)oXto-\n5-!Vp9,4b^FRH;S$OPaeBXjK!Y6nAY8_34&a-\AEDkWoZ:G_a0!(Kg.3)`&:`6br-7u)A=r[(Ik2,m]86H1gX#\pr3H+fe\;jm-ZDoUh+))MQItW=O4cN1X7s'=Nt"I;`5T(S]A4uGaD[SC%U,`2YCjjKmHFZb>(-tZ+Sk8_rb!12kAPfl%`[_7Xk7a-ra"osYaq,h2k=K%H^eas3gPq[2XXLb/PL;6U4SiJB54sK*EM)(b>-pKqi,f9]8n7*:QC1/C/%,ZF`CA7Bjh>`Hqu?39VING>Q*U>]ofMn;J5sHOo2/-nA+fLrrBmshS./4!:uZZ!4U1"$i^4E:ZCR;!!Q/3qe+f9nc!C?q.#3[!8Yn4^O,etqqKTPh='5"Gb<(Kro1TiC-VKCrr=h3rX:>:]gD`!Q7)XGVrqFd*M51'p`]1A_&]<N!&G^:rrC5YrrE&c'ApLjqu#bEmF!*#C]=AKrrB]]pP6ogfN\0:rrCfgraPm-ik4u7rppl]`9l1V!$9^8rmc.`oqfA!h#RHT_BqM6JNd.bio!f9!:Q9>hfUmX!"#:t!4#GiTDVf*^\?K!DeQk^rr@s08,h(prr@$f^&-V-rr=F]ju8(jC])Z]!1IPJDZ9]prr=R`@/$"0n#k9s4')IQF/u9e.r\EFj7s:sGK4)kmb).+<*=XaM9KN"=JJ[cZl(Ys/NF:a&LimJrrAC@b\VdL0:b<fqbqJ+Isl^"m/G/`47`i3`:RrfK6h+&3KDt>mX<he\0QI82FA-DOKHLKG^L45^/p,FnbC^>95E]l(V$phA@VQ';Qd0;R,^k_0W8uo\k/bShF2,*R24?_H[[R8hY(L85L$8)bC#>cB==GQDtm*uFCOa/QPX"^QS7pQ]^QpiCN3Kl-\f@!-*arQf]oH753!;SaBSH8dklb1W\U]!=c]2ib\t#]3Euebrr=IMaIpObW+rTCA39Ci0g08dBJL:H*F'>k?Zk<c*0e0RI)S\V.WibnD5dePoBoo5>`Tm8aK&9_.U+3%*@96kW&-;#:.<\4!3>tnpU3lm9?6V%q8N98[[533B?XU%c.[FAm)sK?A$'pWfADr)oj*X#m##]=T\oG<anFAe`R)%cO)\PCS0`#CO_N_%&OW\0q&Xnoq*"4s!V.RqjA%LK?n"/j+k;u$Q\*'AXA7uZUoiB*Fr_prWldth'@>0rb'_2T@1-!lYmYN):9GUa[kdi,/>D5A.+YN!hOZ^h8W'lAUeK'3l88k\gn1LZH`)ATFoMG]JUHV[!5ng:k;WD.rRYu(htr4FjTkc*T-uquAaM.[^ZK1jrrD/h?iGfSmsDcu0VA4b?^s@UW#m>#pWRP_HT1l4rrB?%q)SHTMY5dIqsF,2Z#;N"!#BC[rMqIK!;@79IeTiYr$!*Za^aK=r[\:\rrDN!TA9kS!5`9]k!f3=rrC!DZp4;GQe66+TCHgBrrCPb+8)<(pTfAM!")F"!4\1VPn3j2*sI/h4M04uHN%tmpA'c#J,!aU>lOf^WU1dES+$>@c+!]Q/9(Uhqmig&msd^>H[:#X^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-^#qqo*ahnApE^&-ZJJ+0q>q^%;UrrDhu*JOLn^?Q5TaFD'rJ*'2t@fHGHZb-5;pQ(6b8_\abDT%%SD#XM.TR6FHT7<*orOU2JC&\1mJ:'<U!8r"cT6GYO,Q>bgiHP8NDoY*@oD:W%K=:d[j5%M#g6WWU!4X_0pTsl"m+H`3p[<So:\[OXrP"'_UAk5PJ_csr'tZumTmt.!rn^*8O8f1h50Ns+hsl6j#kc79I9VL+=Ohoh`]nqHn+]nlrP"'_?%:gadXV00]=Zt8T.g/UMr<dt)LZ?"!5IPYn(j')!$>7urrA?A^\b:"hnAsurU&k9DYNUL4AY']rr@%iI-1G/_uB`"2u`7Dl5/r6ro+jl62pq?B?Cb`fm<jFp\`85^\kO`rrCF&rU6*Eb1q4PO5KH*5CbsA5#]p)61M-!8b$#*@Q/aZ(9H5W*OW2"(N[E]c8u<07%rpa`Mm\A:6cSeR%RkIM8%s\r4e[!@h[A,cNiHRDKi0;;KTSl*>=j]mL5n'VZVgnm@E4*M^=Qr,F);rB($&\.9d.[boBD'#^in3p@"+l]*f!POVXTeNc^Q*j%/1$5jj*0&5IAPqLQuRHhY:JSf`8pmDH<0p\"]4D4Kb-aPfVLa7!7sHP_n"<Vpp<9krjipDjuJfQsVL;5op_,g?@GC=T5SHYd3d-Jcl'.CWV25D@5HC<UA8dV`<=<ee'a<JN7HOd2ff;bo#,HtfG^:HHR+co#RI5/sFb-]C`^7e!^/(0,Kjb$+YZJlJSW^$T`epRsPD,9CNu5#D7Z26#N"3T-GhIV<>IejuZq:;cN:N``)DaWtmO!iu\2)io<CrrBoTA<(!dq;j/&P!pSfm#fC/#ED@4GP6A.UT#a,l>?mcO'q-O)rrq$*.hlq,P1g*T)J$]r6^#^0JA&Cpj`2ZrrCm4['.b.qhT%IrrE$=T,7M-pLWdtiVrnGT8<LIQIq8p)rJ@-%fPeZlu)RdIlpO%8l,E"L\[\E!9&LbTDTG98)BqhaD:e37IuT?!"D-8rrCsHJG'9Aa8C?iL]1E+J*t<@IeUn^'Y2ioS,Bnu!1_BQ0BVr5p:a0af3<kbds6A\<sXpComNabFj]5n2d0b_$L\HNHP<2pZnYDo0YL)tP%]FD8R-E9l#rZlpk/LbIQ2g2NOOPBbA?OR9<N:QM;o)QF75^"W_+hnbH7fRdEi?[eoXlj9N]<`"KX>1i-$1!YZ,$):+LD))a"W&XWd\cW1uCaJWKMPoSP6m]pdhSIeUD!=oSIZJ*#57h#WE/27GbZI!s$--:;Ug\agVDh:c'hBkFfD7[=C=bSKj)g"b+)i7e(?(F;CHe7,GWd^2uZ`f[fp4aS:;YFY[n%sR28d!&e<jB#5VljCBLB'S^V#5R##IjKYA"B/9/pEgD"P,HK2pB:rKYt[SJ.oI^*791t.Kh?d6K;kSMKR$09VJ*o%Uo9.uN*$^U`pOm.<q\"3n*f-!YPo6d\?K2Tq#c#bh7I#G6_<$oV[N#bEGaLn13BP9k-/"'QG4HGG`9'pW\S(`Tuc9ZUREVGQ$D'r_=g\)!1eRK(V"sZrrC-QrXQZ/.tl2XH5eSob#$6ed:BM-55sgCgjOSrkXnQB=\1YG)ibdQ&abX/\kB@bP"*UaaI(RL;g!20SI6qs*#3$D*rYFUrr@_g:i8CnndOfRB$RRY)8!17&!aL@>:&SW_tP0YC\B>D%_D2]j.H75-R;T9C*5^3,Yuo$T?.G,1L9pWp)Oq)Wr!gQ=]aK;\16B;q'K^KId[P^Q!T?:2ZEb)X`T"=M"1>noa'B$Z8Tq'=IW!cE_@@$WK>Y*&\b=<Dt+nImZ9Zl(]C&W4ZhHV5/&uLr^.4Irr=MBQ:%V8p:f,8ZIA4>jgf(da!KI7?H:]c82F/mf#tW_QK?Fj9p*@^U:+W_.?6fjQ)X'orY'Fg3r?)W+6@uHFqn=FB(rIgXR#YcGWjXIiccGY%?Xf.0tYJA@jB)e'hk%>#&>^lQ'h1FVEj!)NjR)@8Te$%2(_jDJuOnAN3,buNa`W("Zo\Zn=X4sOsq@d;9A\63;:%Xrr@b#jRKULald_TWj3<qfaP@2*g02s%7OPb245hdb@N0((EZ?sM`#!B;^ml,)R5;WWN8,SA3]RW9%kbEjklN%T!"@t])LFL25-k4U+#:W>+31:HA//Gh.<Q>68c8<F>"uYg8hQJ7b<_7!G^=_+HQt6R%"VcYkRU0)uP:PmENDhg]%6grr<T0!5$JLZ[)JHrrDHAh\!Wn'4_%BpM#odpTm*Ef"upd')qsYn*f-+6N7%=3e,B%raLBP@!lqn!8`XDIF,J$-6)qKT9p_qC%U<^mQ1s3ER\@b,<>c(/8.93HEVeloK2fVVm3kk]n\bagO4.iSQXU9g"Y8YLLbOO<,CC.^\@`paMV:`8[nDbf#C\O1O1=@`R<B"Z;X%V9)^;43dQ\+\TG^l;U"AE,Pqjum-^k*]>(ZK#<PSeFuI7mR=3c#2[*`7;o+=+@&R\YjQfMt$l)e8Z:.CgGi5KWC5M$#*)XA-Wc1qe_+.9a>tg.c4Z#qkd^@.ej&41R:g&SVkQ)su"o\>O8D;tGA,0_T4cK\W?p9'f5+?1ZNGP\a/<@kiXh[rsl!pSo\Y@@,[g)!6mL?poVLcRPNk1OJZ4]EIQ&$L)rX7nE_O\`TinepPQ9QE9gTj[6He-bkm`*2p;F$>#j\27!/XrHW@V[-DJWcJ%#\kS0#!dG,gE,Cj9*hIieh"a@<i3$t6DE'TdH"@u"6p-pHhY2W]>M)HrrC@ArY5A4n`+V:5bY:8*BhocO3fSPb,*$X;,_(QMrP<4VsLS5mC\BXe<KO`E:s#UC[nn`.tfK[Y87dQkGq3pW[DFtr-.`krcd0cR/$>I;4QscJ\8Rc1VFpOePehtlgBn]7D/B/rrB-\WX*..a&U\^<CMglTc'l\6A-nt$P3MWl;Mm"%1D13P*VD[+nl".%o&+L<)chdJYa6@<%%?bIjX%Nmf'u[B,sXWGL,itlE8%ZGl#XM/#E5ICjj48es;<YNt&J*G@1&=`i%UWeO_'d.-\44D\%l7+]k!YT!cuKgCO31rr?G>pIE(`M7`9,PngYHD;SQ-0=jOcm4)Ub)hVkn4g,W5Wc`7NH?aW\:EN0NOO@2`WGQ6Mp8'UPD<cE,;ThXpL.SI"VC<[eKLens$!gX36MKql1]2tkI=,Q#$iI-@*FX-KEHTeIqWK#^4]Tk"YHW'EY6Ta:q^Z^Z`luADb>i15r_Fl/)LP<AU"`FTW%3Ig9$1n1;3fR3@Q:"&YN9t"G438>Nk!k'@VkmXdFA+`Ykk8Hm7`7])3!?4CGj]_D]c<EffV]?En3TDR\dltD'`2p'bJRrONR+5qm1?'qX(nQ=R)Om;,G_=<5R'-9+7&hX;>tje.t=kV*@9WqYpH^<ZdGeQ.K<Frr<EUk\\l#g[f%N51WKZq!ioPbHU_!)g?/ZS(la$N5]H"$(AY1j>!rNY^'DdBe(?09U)q^4>MVQ)+><b#5$UGoDTG<eQM:#]!gbl_63\#$rP8d>h1iQ@R#_/3hhLe/!!r$-Dmr&lZ%(:]G2$60*LLd\5u^-*S47V;qb2K;p?$HrP]+h+d"'FBh#,gXU?bW@:DG+O+-h8^[S[]q]J[l5PV`&htuO49A.qs!/3+VfdLr$r[]ljqsCl=\,P(\!/iHkrml`%!-'K:qq_7$/?[^l]n?6U^R(R#n".\S4$-m<:Oq=9.JH=(h&F+Ii-)!RWPNt.fMH2EZ[7<ROJTp*lEM#MboKK!b)ZYClJNC">9C_ArrB<IVt0NUM7[t$o\,dYC>aOhoFs=1adh-GS5p".2D;#;Uff*$H"uWS-n&`Kb=s2)P";\g,6e."4fpX@9ftLI#rL,K'J\QdU.Jm\&i;%)#[m)E'hXV5cQ<&R9T@H1hu4<Grr<C3lAaKE<0`rRiO?\HcEDVn@asFN9s'fIhiGD0-.t;;`GIb+&9su=?Js+0@.7kQ3=;iN<BX<d`t^0oFLpDn1N!'GrrATJ_U%mt4[sYUT>o$5OO^t[C+33fOmB`Wh"A;*,E\s[BVP$pBm(OmUDJkj#-N>qnBU6S"NpdH,bNtBrCnj\11IL8S@%BRNTk,RC"\:bJ&'4).%f3A62V[Kh7\<Te\CM&>mLB0MuNe-TDT26._XJ!r$bSDaBPZ/nSGWerqZQep875,q"JI:m<)5)!4Y$2IeRfRamZV5a(0ZH?\'0fH1j/6g,gBhHpd09[s%AuqnI(-2Q#&l$aMM)0coB1=^6Y-,6oP@`;]gX.V=LQV!HK>m_f&)Q\P@i4(nA.r)2?4PBcJ#^U?&ha3MAZE,IepiPa`[3%6SoArL8!0pf)EVoRg=JB$Gc4G[IpF^!YP)e,P5/Zj_q=lG5TZ#m]OA<dceoKp.^].d45DJj^nms9EV%e.L<!5aT-iCJA6^E2TZ>J&kO`&N)*O*1.tn@In%\")_YP2D\1cJKSHVsZ!3Ht=sLDuB4oHi]X'olSVZeML.%SRL-:Yr<C6o76g\SQn49QEtQ.G51eQcDT!,5I%2C%?oEbB=bBQgN2Q?o2D`t:j*W@b-hfojA@Ks02FSr?RUjfWg.eJqkO$"dc0e+!A+(<NTmDhHASFV(K"0gpsT)&A&gM%]>4FHKp$r?U\<mM/cPfFJ+"'*hX';%'P%.CDZ7QR!91lgci3N!KC)ms?h*K\rN,75lW$`qHU%N1n=/>4E`^&;r($^<rrBgKZosm3jOsP5DU/$Rrr@e>mJd1DS%_&!CgZu0nDEfRDuIkXp[<4Qrr<E?q"_LEcX-Msral%!P%-R0icfQUG$\s'd6Sb[)!k#XajKem<Gm2NQ#(I;+1*p^;a@A"ofJVdX:D2pPPu7he9Th%dJ2,\;m4a8\$&,AAJX%BAa,p\-)7-Wf$eNmM4:Wu3MbCkj(k#k!/o*jYll#?>I5fSNXS[3QKqD,XB:n+j]4iRWT7jp!+m.*Cd5p8IeF\0_Ii<u^ZH4-c@;86o9ekQ%:pSF41[0f>LN.h\0.f<!';,E9:BZK5!kdQ0\d[GdT\A@i$XgK5&+?gT;.mM^QPDt:Z]pIYFC$cF*?QC.B,(jb.WeceCcgUSkMrS`i]`4`ktjiBKqDk5-s!g9N8;@5"IGgphjU.'n"kfE,MZ%Km=+b+E.WQ1C)8DENYan.+"+L&+ABLTD,]WZ$YBAqqo*ahnA8=rr<EGr`n40\b][2J!a#.@&l(FMrOFp0<ffKRgi.=fuQ3U4-`OZ[<LtS#+C[0lJ:bXGchYS*ZBIFeW&U@NhShA-i>BriSN\_Njn>XQT]\RWQAa55*I.t4$jp/:F8gh[E;RR@g0Hj`G(&k@r>F!`E%sm*'&XJF@At]J>9Jj;cV7Dk35^TR,H?AKH@BhmB/I'\^O8)mr+kGr;lZ]G)uQlJ"OKnhjscI(cpe#jR97Tl#2m".r4*%Vf[(-D/[+iYUfHklb[,qBX0dff(/6FN[Bs5m60bd%?P7:RVJo]7*eG(JPli4PKEa75FVTPa,cJ`+g[s1?Id^,D;X)`#E6Il:<qboV['TopBGs^6No>Zo\$N^X!fFk"p8nf&Z]U0N0E:uOeA71=JhWV[J-7G1QR1VX"!9g;+?\ue'uV^/L79f2"5c.7'T@4<Ym5[O5QXW\*f4NU%()&me#l&^A-s`,H1L_FnFKRe>_fW*i\#+D=p?)j5/\67b_,%p=uXgD>K]YaYqCcEl1UO1ph;=;PdiG7;E:rrrA3F#Mm"UHYkC,mJaler:aI6JY.8:loiOOh)*aegu$'T)/=3%H)gBj9iCaiV0Lsj8L`LJ1C2Zu17jOWNQ=ai%1RG;A<`fE:ar54KO/ME4\lr+,l$,E8J^IFrU32T!9JA'!-*R;k5PG!rrD4@rpKaMn*kQ#iYqVYrr@geaq+I(HO)P(r65)Rr3jfK!79U$mrQh;`W#pUZMnF-pn/]a5PQ7G)rAYC4oYNKKt_7#!90mRN;in85J2E%S!3h7h#@BQWH+X.K0R+tf*hQi1&h5a$1b_.!#G^7rr@G]<r8co!;K7f!<&(9I/a3+_bL.2^>!.E6M3;8=`Qb#Zp4GE:%-s)F8ci*fK1><0D!lr@m*c]mluT[T-X:PVn)ZmB5S3uSdiG7]/p$W6;[*@l*R\J4Pa^-k;t:'>$T?6-(8c3o[rPMb:>Cn@VPb0[r0m`:Zdr6'4Lfkb@@uiF)Mr.,A:rL^@7F>9_nY@]t$k-gmALeG#"j$EdQ4_+N[L#,a8"V1jYpB$'30HZ"Jt:]JHqJ2cskY2,H^4OG6oPpdm#Mc?X_d"/rc](Q7g5HeM9p'VCT/j1gb$cA;$/$5s4+]/QoJR)nSCl02P"P*<I<iiYCl!m`&JATQ;Ibp\H4;AeD:!m8GfBChXqU8.]k5:D\tY*P@=[cYr2U.Ul1TPDX$m#@Jq;GsU!VP:&_Vieo3G:8DeAMt+oj!sFY`hii;0WNoZWP7X"UgND'%j0d!hSAUT8dG=*/)u]i+9)<b5POsAO(!h7'`S0BB6<>9*M'tF!5Ca>qhNcFn``l"bA-MEba[M'ck$%$ci2oprbLEd@!q8>!9!G3YB;f%R=FVq+$DjXe+lN6!5VUahU-Z`r]eZLrr=Tk+8`UDp[<S2!/6MafmS?%5Q!2j5Pt9G^A\'3$82>YZEO%-rr@eE?iKtnGJA<^r*HTLo#1P.mTOu3^S0Pu]fhA3rU8p+nDF6*8+4e%5Q4H.n2Y*/l50!:ro-N:J,DAi^]+:]p.*a[MZ3[EX'>T(/[?JqK&6Ipk]cK6:LeU`HhY:%pV2(%e,BtO=VlA`!&.432tEnH8!.Z5]PnUJjNNjR'%OtY^"M7JNqE]TPN8R/3n(<67VJg`M9&T>.IjpuBDDO,VeCIdraYop-;);&DCeLS<pQZKl4^T&0=1D29X:b-Y9Hr:W30;bM'HM>>#.KcF0/6pB(o=qqRhubeSoI$[<7\ipM8[(p`t4\[I=#Cd[Paa-i&VsYl=]m^J*[%B&29G\?h_`\tuB_WMoA$m<ZA#`9[B0OKOV8W?d7Dm>]B)W2;<p1b_6'V!;)-<W<%_3-T#TO-)X4rrAEF>Z!d6iRk]"T3Q#8BZr<`EoAJtGCIuX<Ri?nX2h`SRD%!B+a#+kUD@!3ZEAYr'4Q!OIrj&:1=JedZ<r.%11u>"2BpSi,f'E[62c6/h2VF7_Fskbf(?0:U;6L5k_?*3rUUE+],SI?R68$GD8B/[..T+cQHY73>>W(U=%e^OfX3a)B6TW:)<[6tjXR/Eq#p>t:KmZ)`HESK3T"uWL[6&Ag6kS"JWa9Fpj.8*fir;D.V9`:LasqJ]\-CiRR6$ac<BX$IHtVM8[d'I9:>@9;qAQ<bENJ0nS2RU$m@5e^TRS:T76N+]u*l74T>Duft.1`F_bf"+1F1)>>eD:iT]TB:N:b0K;L"cHH_@*=V\-tE_AGrLe>o@'J`5m7b+3bPlmt7iCj&D4ftZ&h1;-MPjq5ZTn9*6-cUtRi`%L,=U]G2<OuL.<m>3SZD;C.W\R2FrJtd20BlZ>+96fjqlETIITQfeh#@AXq"O5mchL^VhV>C(+6B?6F-p5+B;G&855j6jPO)V`E=hPCQ$5pa?OKe0%(+O:h"L$e==VY%@l.+[(-882^f.iK=8XM.&XlD._VNb,`oV5HB901^Hq%o=>,5ZgbuRhe`_!GA9,s&28!VBX0m+RQ9Sk$o7km=59LaKa8N#EQFEaNNX[t*m5"7AiTTDE?OsDsJk=PZErU4t!NnrC9T-=&D@!9l9rU$obmnN50[tq$:=e1=NNh6DFMZ+PcoXG[0`t]P3.=n@Z3bk`in^H%K-B-F"$rTR9]/Xp4!+pA'Dfs(Khq^6%G2DNMSE:b452++q>)G=[<:h8F:=*I0/K"X"?&F3])<`A;C+*Uk%'dh9<!uY_FEQ*;eBlGSe?VQ@-\SHa\j_e*qABMA9o>MJ*rYOs+6DaN`o]ME@imN_3/iP$=!'Hu-BQhhC?b&_k'Cm6ZtX7j.[jKdL.8)?L#[+hP`ZhXLa1c[*t^#:Z9RiQT9;(!qRTkq8PaE/F]<Jq<E$ucmE>\H.Sg/Z:1BYM7KE9f83DOk+i6"DB]VjJ_#=95.R>%C&3Pt4,N$20J)PBso/+4KBDr_i,Q@c<U?V,\htU-rr-ppArrDQ;mSEf:Fm$DC]Dhj40RrZ5^]'"bp[<T!^O(9R)nl.+cP*F1mPrFOrZD*BrrBpZhHoj_fmi`0eS"k%S+lp_J>7,]"CV60RC_;Hg8"ZJH22mcgUI)1G+tV/rrAU^ntl-_h\]U`Do@#-f'$:sd3S?_AFN`:I]*!U\p(@!/1iJ83+r-DP'*A[gZGL>7sX'mJTS@'gP>CLQ5th[bPh_>cY?s*.XjVAE*ZHrETO'\[hiB]_XHjRjmB-c'T3[?F'-%)3JfQ1'q/7eM0,Af^0QO`2XK1@[>;j?OjTRLV3-Hi8kEep$QHS0aHn!18&'E.b@>]S?hSZa_000jmsV+JqX\f;l1YD;h`F>I@^circ=#q1'i8JHH\3&5<K"!"a\Hu8A!N6ReGIu&C[W:?]sc3>H>MunJ_`CT2i`eJLYVcV/OPl?AFX`Z-]9-8QD'mr)Oa0LlLHHj\*)Di%.Mb7PJJek5p?PoBUrHg67s-]8Q)@5IJ_lT^[RX`l7AS!kPfFg/8\rN6QM8cq(H#>?UI[*>nqJs?d,ST74i'k<BJ;+9eB$O/&rhi,GP;H#MuJqaZc_n\,!%R0`'KQLaqWRiU3/79"J/8W2?SlW;.BiQ3rLpib+-^-AfVbW@H%V"G?%\fE=,'h(5?W\)3HY5m/1-O?jit8&'Chrr@`hltuFn]"afN_;FDV6*t^fT;49TMl%fe>_Y:lpk3bdf;>U<DXWR;*;)/qN5OeeY=(`R-3Vgi:+@c.l_KIug.^KRo7kurUZ(t=1AJid_^Td.=#\\j9ZLAZ]IN.054'NK]lR.m)kUjjZV7`.r0HI0aPhMDRGee._c#b1gW79mq1`],m)3dm'?N`7;L-qs<McO/'1*!d<TU!aMq[56k^E?bnsq<%Zf?PVSsR@mLZs9Ql^e%UdeTsr5'eit_sWIc_.)WkJL6\PFA#\49fCAC@bJs_q#$j`f44)Ci2MG[OjS?%lX'AN^>S=)GAhW5ASh=sf%DTj3EZ#n4#oV^F>WR,Z91.fW0S;Zp.C12a&P]9[.RC^.n):/,-lcCP9WG#8sRnkE)0$g*);YLK`kY;/jY?Gqb#FN4:i%<HdKh4'/?#omVhktGOn;ZRr:$>gcK_!ok2ONjo[i#aAQTR\]c[1k<D;bij0JLXT[/g3@nK/L8$]-l62;LRO;0+.R?+rrr=>rSi8V+iP'>EE7kR<^)o#5IS=;B=^5ND4ao=;NN`.FeQ#R/%"37LP1%q.f$_^H74`9&aVtF^5mQ%&Y[&O34,QS^>ooUjkifjFdBaO'XK84P<X.KB#l!dsfDI(%YPUicH@IjqK-/BcY;T*ukNbYo?"J`V`lC@6;p3ga7@)%ojYiF`c:&D_Kl5Z/b^s<o1<co?nF`k?/5$gerr>)#V7qC&rr=`+Mr2a6B^M7ihTC_^AE.m5UPY_!pO?OOejE`Po(b8mU;ie?lMAJnTTVRY[Q^M`KOG"cqZTG&EoHat&N#a2WR@P4Yk-="#)V3f:V*<<.t@4>hnAFon[J=^Hk,s^eJKq"l$nr20:LV*N'0(&^E&d0*NQUBQHYM&VYc<1rrC`_gpIpUft#=D79jh."`t=cDQOjL'TpK6&+n2mDi4MhYd&V9f%oN?q(*:O*=bE9O!VDW=?XX4)F]G+Nnp1G.pl#:gR1)OB3=8QVBd(J8f'uf@60$*LWNI@<@11tj)bc2ViEcH]rn\0llINPCdA0\]nu\<o1.eIaUZ,QDQ`d5nh6p<YC1O?05P6I)[Y'Lk68S$C=$l+N85fela"-CY9AUgU0=,$<?4aE<6J-(iZV9_RYlSEj/mc%F;Jucc/Z(?QahA5ZF<>2d,?`A`u2.k7PAhA'dhq0-O)$"X75csGhFF,CddSG;,&=CXe8Foq4ZCeQRe&uRX090l<:`tQ8Y9_k"33p;W0JiAX;DN\-D!bCQEr=UAk5k.5Ut_8H)RQpgAIarrD!JmpCCQrr>'_qg?H"^\fqf/q<@ip5cG1IK';fq6p;'jc1G_!-^;lrU8romr)!3GJAM#idW3!qhk"@W;ckVrrDu?J+t_%hXq9U=J,<dT:LK,G'qa<!8rXPqZM)'r60T0rr=XWrrDr':O`&In+3X\!4PLK0sCLRrpg!ghB+9:@;k:0rr?s:!;VQQ!/gC$rrDr?=*kUi?i57RhtpF)J(Bq[mrS[3!!ntl!3ub'?2jn_JQ)RK^0dpheDL0NJ,[PW^45Z]VZ-YRD6^dKqO@I8\KC]P+8s-Tp[<7(f,^DLrr<Aerr@a!I#kH+'9C:Q%u/suAF+X?+(3RUno\/L"4k0=^G3F*ZaYB-M\SlJAm17mq\'o$e'(<X*47W15Bfr.8kh:0QgEPq9DkL`!1_)M<;-8:G2E#Wnk$<M?8HcBMliTZMV4Pe\u>Ach:t!dC)A7qYGUWfha]!q+H[nn"Y\Y)Yt91-Yea/J,CW^_j_1o%D`]6'(rhY;bdB/rTgdU3cDDqraBP,T4o=+3)#jT*T+&$;,*T>&h^s:6<V>0j**EVCo+u^qJ_F%"9`V2RTm$On!u<+<k?5HlbOr?XW9HK>r,Ajo2#G^^^UdUDBN8!O=&6CPm2_:-'%9JbSL,4aS.m+T-W_oO5/,#_b@90;:q8%X!<@tjnt3id(C+<2:Xf5iqqA[BkK/1)q-C5)4%nUXD/>g.l^D\@\TUp??GF_#T%fEGD51EWg$Ei6;O[6cX%PHCMKi;sC:\+gW2Ge\-&P2hFXM;(7t#5W\'IcerNk0=3ZRR#D)UM0=W$_>B?b;iYHuC!_-IT<</;hMaXh#^Sf&/CS`5bPZI)b$A>(jp'en1R,a'f3%N[h[9r6>ni7S$!";"'+HhY2_J!JXa`Wbt'rr<T0!1_sD]D&>W_;G-GCZPg#*M4`EpLW\2gY_TYo)A^\gFrR,6[SR@h`mK(rK&\X+8f(KP2H0!2m9oar`js+./]V8!6'9PO8\eLQe8d9rr@s8>Q30<rrDqS0>Dka$iU_Irr?T7o7R&C('CaipYAX5Kn&&:?h5K@:B(=R=kXtpa33g.l;.2aAcDbq2@oZ2IJ_\Krr@aMjVObCSqlmWq'j(WEgY^Ug:^YZZRM!l'_F02`DF5so)lA/pLI+\,>CCPPhXr"G@Kh_JI]:n_Dp+0QI"`t>WUL4U3n9TNRpg/8(X+[MpiEkH,usqSiMR0I"pN?YBa$n,2;OdYo#X?6SlZY<N;hjC*)*@&\c_=D>](GQBjRX#&+(NrmN;n1uUsdOuZLrr("MKq?(kiEqKreD><j<9_PAhp=@i])B+G+(Kt`o\%Zg@%Si:)Z-n+9gGpgU&6e?H'#f&98C"'AkMFnh+0k\:ZZ.Fdl](SD\,Hk.l"+,>bM9UEd>Tg2^pR-[pXi*lg0cD0Qq8=QeqW4G@nf*d2-P8SC*9L:K<CeJk"@DX^8T_?,E_HOl:Wr5!"&f,?C3D.6V%'XX0]L3rgg)KhCGRT^MrP@A=Xr>gf_Nb9oA5)NRW/Emdn%?o6CU]ITZ(P@T+QO#H_#85lo(,!&f=_\A+G2rr<;hZCBnQ.F`78%>"KBO)7`Y=i8m[5IQ<!@S<9k3kKq*l7u@Zd-F@uj4:WN9i@c+-D,Tm'0J2E4\+?HQCH)B?aLPDD)B7.-^VtYK)U`j\A,e*]5Mk&m9/o7rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"a=klCjdGW@q3c(/J['Z2C`MU:gO3YD14-??dG[%@n^s#bo6G^miTmLVX4c0r4\^<EcmVa2bjh\*!"V99LW](>+!/.3D=+7/r^-!GT'O:1SBYr$DU[W)<oVi];Io>4,99c@[2X<7NgcpgPsU.dR8i_\rNg*T(qfcC_j#`8Nh/_'+HoG.QY"T:0fg*Brr?DTp2%<]WV/hKoab'pB3F800\p`t*H/4ZT<Ic"GoH%g<\%^'f%@t.rMbdUb@N'$a^lqME&`/gSt_r^-_6L7N6]A(pTCq?g$5`SfUZBTW92-:hRD1M@ps4*I77^J6@'*IZga2@HNQbqI<;gHf1enqa$bnDcLT+WZa!t8[jkQpB^)Lpl-uLCYX;+dQ=_WU&Zej/AgNgt:bGJg^O$SVXM*fkmrb8loD(h&(\f01]smQ"j&]CO*M;(LiJl/mHQ,&3m#ChQW3Z%WQ[$nrbe/&-4jBS?i\<#^\T..5X\B4@)D@(@6<Dhjq!\-p^+T=cm2j(2:7'X:ICm8+3fbdW]Q0;7bB7\0CkXc_EDpbFJjG@?j_Jl.#$f\&8.75H<>l%*OmRc;[W)"fb*qT&GD`9&?"\>PBgW1Q'/0_;Z7Y,Ri-Y45I)Gq\?NpFQpTIJBOSLEXH\ZihcU[#731d\+ik$FaD&Oro%bfbs]CQUT<Y'$0Z'^KV;smnDZSPRu,=mgS@Sd7&mu\^8lf.BUIaRK\jR/"mQeYgBXD%-')`oK7]XLr!VT7.oG83m;a/&LS-<?$H?=M/Z]S+NKQ;aI45T]lggGjT"AMnUY43LPlW3A>/1dONMR?SDFeJcjTnicm+R!Ulchu3H.BD!YCMYJjPrr=r=#Pj&GcWTZU8'5/aa`[kmGjfCMaPWD%5!llfkPLh1,TANcSuLG.$]pjFef$q[J#$M$P.n^1?XFUqa5ju%q/`n9<aQs*Heu)PfBt6654[N0q!,G]mk:/M4Bl^0.lITn<QWC>i)(<a/a\.ZCuOV6dq7O9Fi`&hbq-k[R97rXb!\qc-.VtsO+-d\r6b9GnJh:XFe(HiI(SW[\(eMr(Kj\$gGN"&AT1k_AS*FM8pZH1aklo,^CRq7]k(/^`%"fNZ8a@4,`\lbU/7H"c]VWL5!OG*fhh#WOF:u#ll6`L7+Kp]lK#+ekP!IrU*YP1L=tA7>.f$.#?*ZQJmhGOO]8DsPGF!kqj3Sc@l&5dRjUcJ<,,&q>>e$+&Rs,3)-LGrgt7-oc2IOq(&n9\+Wnjt@&V%3]09cSm7OIhnS,F"4njb<VXO76e1E2t2dA4>YbK!sM-bA+d#*4j5TeferrCD/^B;DPcps`()&<F&rrBftCrb8^nUY<DUrrj<*LtTkC*Q[fd[H.F&!L,Gm32If[cNDB14g_(N'DX&0<OW>_10MVp\t48IeRj^!!5BMT>C!XT==Pi'B/rk9Z,JIg\)U<?%KWYS"k.F?0T'&!5$L;Hn`iYpMOUq/2Xm41:7W-,mmMr`q)8C!LT'[^D-YTr*oG&M9]U[4S?X>6E>6!NK88N)XQU9EpcZHr#r)p*&<per_"C(_+=7j1j&Aj:J-Tk'oWc$[72*R@PA*4@d+""@"NZ-8L9[@*j$@;=(>gkGSV:t4o<r?[f6>l=2B@Tq6AQ/bU9[,cZ&"F;Y>c;YO^F0HW'Q,r5@Rap"a%@h!F8QfpLRf2Unp8I,)fL;EE<U,Rs.)YWnK+`SSo90=8GumgYPKaEO5sXP-\OGB1O4[oEVnP,Dh`k1d'lgS;p/JZBKJEl(?a9DuL"a&BEcom(4lF47a3C"a>[@6D]4C!GWa-#jT4rr<YW^O*9tB2dRb!5El^rr@hHat)Db_%-/*^QKZW]$G?^rn6`KDL3&Lg"`cADp@*,Q_E3H`f#:Wj/'T[D"^X:M/&$nO,@L`BOb`'Htkt\^<'a&J*$@nGN-YVp'5V[^<4Xdh>Q$VH!1[;PcrqJX)M!J.C369Rrm^($taE.>E>F4k,AtY@>tVmcn(uRC`'jlLVq\Bf2,DY<Af["41+TO(eH-DJ4UcDD]ldshn>O%Oae<2-fr*?DSCl$,M!f@\%7cLe&;OMft4DQBkZXpRR'(@:E*Y04Vh[KD@B61'2`<1eMOfD):V;T1i`T3_flVbol#?Qp3Wh:QXjM$#@MFO@uE"L1XJ]>4HBl,BksZIWMQK5i\K!s!@9U?*7.^6aofU,3!\37FTigYRS#X;Gj;9)!'F/;K4B%8+GNBbaCQNGj<&jFY3dn?,Q%9ue*dS:1tZ/uFkB[92F4qFX1V^rI'ejV7Li&E/ZD7T`[q8m*HR-C?nY>Naf%0`iB6#@\fJ`"WA2*4<K12EX#iXscXkk7:.ZZIeMPnsIForI)[9Q?WNbM_Dfdu)*Ng^Z'X)&tX2&K]Ll_3F&W*mp!6BBa!$?[aGobB''B7>dr%`3PrrBgFl>QAqQY,o??VtsCh;'$JDB)^%l)am1gmrM;`bp09?7j]%9=M2g%i,nonYMZmIiPQTmMaE`-fTnMp92L@pmJ_eI%TU>D9\-KWO?+T3M"'V*P'c^D7c4hfW$LY(.(.M&7R.JXUU?HQ]a=M8Be0e=4Q97e[Vg@ZbcY$HrTSBFHT2e`CfY_#dPre!0*[ZcQI;thUN\X^)_;C^tsaurr<s$1i7W+cKZF@P2+`,%L4Sr[g)<(V68YOK-@esZ:UVBq$`j(V.t&h3M]Z<Alt=MW!WOuq=3(sY>kF#lC8qhFLD[cDY<_ZXNfAVYuUV4[c+3;Vf:ato6EiRVJ`QG,<2;?>9e[h&:j"L!!g0(]Nl9oME2(Mg+$3n7RUr3;@K_V3A2U5S%Bcg^O*-0SfdHnhrT@c_`J)Pgg/+P)6K7])hG!CFS<18DYie4gq18aOMr5HmDLS?@q"dfe&A./b#RDsb=`Oh`q<%GEMAZs!0nYK45gFf^"luHSWD@t/[sCN@gUG!cEl:@><b!T=qo>IkOIjR7r%0A9U8b_W5h&KLkq$N6q(-=`lZug\_='dOeSn'Gq*MSBI&n\f9JU7A:O<IV7?BVhn>8VYQ"S//H/NarR4?Kq\("@Dn^\G3d;mdG43LX_*0HMC#u=bBV)Q6Z!DdgKc<fec=:+:Y,dWgVpk_)rrA-Fo)A]ccI:r8KcbJ]Vq\"%-8VlQG:bBS5mtpedksVCT\<PR:=@G3;/6nboX3FPCjg0/KRueI+^&R\PuZ6IYdq1#=<t<#qQGABYpWEA+'S:i=mW;\l.qh_le\l3X:66'ffLj)_"?8r]n<!e.B"YiP"DN^%.*EQ43K16cKriqNP>)[?gPM,fir6pHL#HYG)jYspo8]gg"Ub-RN-Jq(J53mQC/cSOFYPXRG".eM_c+oQ+]%44WQXa[':kjn0!`>UD?6`oM@^JfbF2^r1^n5rr=Td^LlXm*qc,`fGQ=!`pJ.KqjTV!)tSM2:5<I^B'V,_dmLdSfpK%H90V=7/C`Z;PW0.D<O#g(S,C"70)R$:Deu>lI?g/QFe+4VK:q$UAN,q?h+LsH[qEh4@ZhT&*`jPM7L=,,Q8&LqW!9tuApc5a_sR/rHsJhLeOph)??rEt+tc[m/%Ae$&(BFLfnZo5mJd1D]nN$5dTolD6`Kh37e_AT`V(ZXp0J57\\9t.Aa<dFB<^u%%8!CbUD[-!P,+6jWbCLOC3ed0)5C8me^P.am,#)$S]S+F7p#D-gS*I#$[Q:C_esn3P%pBJo!mp0MIQdQ;,9hf"33MQ,]Z7'ElT@S,:`a^HFc^`l=m3^i`YNG&B?V'I4g2*@T8(%Mh23WqtId@pL!hCg\F&$/F@mn&P)D9@Un^NH"lu\eF)U*bSDWFfp84]UO6mKjgh1A2.3*-A85Y\Mm52fRPWjjSfd(SQc`=h1%a;V[AbW$B86_Cm+<dBF:-79+f(TKm@D:eGgIB34_2lH0#ZP0*1^NGh:\'6&?.c^*EX`)i211aP2GT1p[<;dn2'lIr$),D]0e6ZINnEU+0Xuh9QY!^p\%@o-+eLcI=6`1P]:ShpUKLho5ipU-^EeG),0\TRTX0FJsJ<=/S"e\'n-\kAb]WAZ5=[E]kNM\FZIC<?-TtHC9)O_p>%rH=m=Bq\oSP8jQ3)5Q:?+tTkJ*^OkHI[)46[i)fO_T0f3"T7"EBt1sB-,M7!4DP=Sj!Jo29*5s,2:hTfJ;p!1GAm>JRP_mHjqg[#unhcMr<[CiqCn&/(9p<Mg9jPac&nQDAO7N(EjW9PRE<RBBK_TW#b4*YT/WRs::4gI#lh8=-tT=T#b=C&tU[gkTk.tu5WX(*ka:h4S=OipI!9embiPh=WH&.c6Qi.e*H.I&+;GU>n?=J\jaaG_[mlG/,WHhY3f\**Z7&,AA,*Rg;/=Bm5prj'T*W[+NuAo'Zs=n]9KaXiSlEDP4+7t'fZVd4UKB?AJr;uug./afh;:KR,Ugf`A/`]"djRjsT0B::uo[<jGtK#d2$Etndpc+gi2CC9@2=_hTSJ-WFqh.*kSOebCJVcG(!TrYhAF*fR/3Ma.\m!\cahtT53!"&/o<o3m9mb[@!Rcp8rlgB2!,>Ya0B=W5XGHnV@goP79.?7>F@HusIli"Sg8EPCC6AGqE?Oj@dR0OeWkJeV*+7Nq&DX55a(L2)o?@/t3%V<Lqm`+%-:#hb]e<lgL^;ON],c'.=N2!,-U99h%%9.Y6M%jssh\!0&mM9?5V5#eG8'H*5;S;QD[C%3`&>T7*[42A&fAF9jO8LT%rl>c4O8^a82u`W%de@$3n>6`n,n>\0!6'\Jrr@JUq=^-ATD5_P^[5]!pCaC]^#A`Brr<@0r`+FmIN*YXq'3ZErr=3V\"@Yf9).#m4c+aES\gc]SY"]oL"#ohH#D@.UTE1;/]!:?b%EMo0W1\f;o8`H;ADG+nbc_m7/m5iH]-pN`_PXOP^U.Rj6U*&l$`R3]CB!P`*,=9Q/'!`Y;ZC?g_EIX;1Yjm:dJBNaiM=;C=o;<1ot+NkH$mRD9D3G,/.Wj'%LJ?.VD<;[)DO]9,+\>N,7bsh!c-]q"O6(8c1dI3UoVt5?El:plX"::StQ_eVTL6_h23K95s=C_F+%]S)2oGEE?a2L@`VX:]"!gAF$7kJcHsMUe7R=1ZQNq%Ya\SZ,^/JJ*U>E>]#<I(:te,/619_o@Xk>_RVhQ\MEh\%E#_3.1bgAe[8>g;#qY_@g\kr`aU[4C4EY2;FO4foe9%FaO[f1V/k#,p>YF1"-9@pHe-7:(9RT:DR/Ijr*TH)rrCu"q,QjMrrD"MTCtV-;?$WSA[-aZchFoU+)ClVa1Fe?!,JTarP?SPpTQILFoMHY>X+Lob27gn$[teC<?K:C%K"nP*VuP93s-;+]64The'@B@`O70MRC]f!a_a/k?PQ@uX.>*%Nk1fAPhI7G*l@pWLYp2-i88p0?MN:2>LK.Q.<f-,o`i:hqmM7\fJ-4\17?A+&sBjS3mq'e10Fr$C?d*SA#H>`&/ua!EA2fd[rOHU<II3bM5mLgVk%=tdi6CSC<gq.Cs!&K5Y&S9g=P;m^u'tjbPSCfl@4W',II;kC"Lj5=)KIl"!NudHdaE7PK-=^h`L"@<os(9n]4TS<3&^g)X<$OMH5V*@Z&5[PN/:SDianu'/j(]+-4*JJEs9?<7'0-,fbeRr:]3SVccn)rR&24'fc`B\E`>0Gnq0sWK^>VP_;OKVq?ue_rEGXk*m5['eDb)qDC*mYe?K>Ub+.!/o@PV%L%X&H].KRi,?W-jt"mp]`I]1B4\Qm=AeO'+(8+,E8/-Km$b<;4*#s2N5X;;cI9npEfCJAH\/5#'.Jd]K$$]b(d:`C<p=Oi4`:R(GK/IBh"r:fEoQh8=PS)Yc0_Nbc=,rm<)aS[,ClnhY%ZgmbK^N.:E(&PJj?eJHp%[SOATP_BrT%M0L_9uO-23>Vd)ot^iRK^n(u!DMn^-UJ)SF7Fk=X)K>:Q*I\H&.DG(YKYW49.B62YaW,gSh[cX`QUH>t91)Z%'9:4"(a;T>pQ!>^\;uj5fmZd%`Nh'+TqHKt>2-<&VfT]CC)f$0kQ,r+QB^'='faQ\799dV!e`:KRjDo<$Bk1ZT"WRLFN-tj^/rg8G,Vd`r.kF6:neDT#+hP9tCU9Y4p[<2?rr<DPq+\)>-i$F(hOiS*bWb(Drr=X[`lRG9K7V.#VegBj/^&q:D:@-17*cjY8$aX&AMaro)8.Y4/!"i^[o675ceH,+T2p=Bh0jR9U;pki2h17DZ`s.p._$b$NGoc:G5TX'jecWm*B)_;gkI5R;g:&4e;Q[tJrK&dN&5lrH=p6@>a2JA6B,KQa!0$T4hp.+LfjWoQf#KGJ+udb`(9kIrr=JI!/d79+c?78^3b?F^WBg(njLi*<,Q%28mTnsLF5dhH<d?(lTah:)PT-rUmTRI#.Oj>q*4e*:QD'jqk?"I>n>TUNl&WAFDj<U@]5VNfrG<u'ch*Bl@QV[ZG2(QV*eirU*5&&JEO3-T>L<Q2Bo_EWJg6.r"CA^V*MrfdD;Ler"n8(h:K7qp8n#WIeW;[p[<*;W+`JY<LDR,*A0]"OJSnLYFr%rMQViJMQS=YWfFBNFHR!">*pRGOuHE37Nd9n]G4DQe[3j@Fd2AqdFH&b/R9Z%;9qs:9g!8,o^rbfY8#>X':!ZI<KrS6^%=Qt<IeXg6R`"e#dFLR#UA6?l](HWrXtXsT0>MYr1@FrF^J\O2Ffc-4aq0bI"(EZZaMGt6D]<-;aI^u-3JR2rM^;KRS4tdaope,!0U&:G5(PJra%aq].:@D)\[Mi?"Qu[C@YJeV;;;lm<XZ#LbCV<g<AQ#-78m;*)klBU8;15&1!l]>4/rTos6L7RX-l4=ji1W'IAgiXA4qSA,Hldrr<RYpL$5/YPC8-&,oW:]'K>Cop0Y0^%^q9LMuXQbhjAoEURc5\aXjtk/gHZB9OQA(>?W8iiaP-M\D)j,t*S/9I+<3.W#)+IkKW:*sU=[=4"Q0-][!:Y8p>oh##]EmVKo*gtB>G*Drr8a3+(?&`I_oOjt$g7mTR5ZT>(I3CG@kKA-*K^#V0,G=cCCP>k1+P>*5OC'mTS#b_/3<rW/lIeMmQT?8\B^IS4SllY@'f0*cVE??WV5:+r"D<&=0]-Dc9Yk\Xoc_'WLN0%l"Q?oHD:bG(P@p!FWC&X6KpG];U!12<VhQcl0]7+#OrKW_ipR_,\h6m-<EmMD-<IR!3VgHVLgeS^?XNJe=U_RojU,WiUrJQ$jRr%'J1=KjnVfg)11sISkH'qda)p1QBjsARW"-7p)H971ep.'OR%r-3!An,R34`T9UDn\9)YV?i[)XKUf=(HJ,fZJ%/f8ZZN@csT0@d5JJ3JrWUU7PKMJXAQ9Y+UD9fXhN-p9.hA^9?D#F(BH4A8L)JYd\L6T!GC=4au)@(eX2/Sth%SL0,s>Au`g\AOW%(8Ra4g(bc3L`Dn`PPgqU5$=4(<-Dm>$17!Z>g*m^kONL0M(C&pW]p8TtJR?TYicjtBl]'rT*t^C`CLM%Mq7WE)[k9a$^%Z^HW3"f.K#DN7Xc"F:1AQgm3)1h+9co*;=LB;h3gc'8r)EH2d!lFHG2h/(+*P@kC@.SB\XReTW:G;-E,M(Y1TcSUiJgNRRu8GPWi(pQIP)?)UF^Uef"!'8iNQG>$kh$!+_Y;QD`ipK9//198FNQ[EX%aJ%R'^BEW0?QaOBs'Ikn^]HQ2$q8^pZ4+iVl<?b6*CF(K[dZ0SZ^l8(edVqb8h`h.'c=YWm4$oF12EHsU&8pY`]iK5S@`'M_8T?@&iYK\'?hEB!3P/5ejL7]C?Qa*l>gI$6d;,Pf2=t"G*;)GdWb4IOV*-Cc5-u3FmL(oM(=BELMB"!F%4XZi8OG^.`545"3Jo[kBTuu4PFH-BE@K<XmO+-h1(dIddkOP%;bMfMrV+8]-g;MpKerq2_]+a6G>OC'W6dhU8Jk_T>[V"NlV_HOM74E6klf1)-b)D$!)?0[Cr:gX06QK1;B()l%!'uNr;poO]iS/JaLlMJ^*t1rRn9]429*pUYRUE1PBKo.D.a";r[_j=ar(<e^=^mu5ZiS2L`>hc(j7'tD^$HX,_rG)mr']eoU!Ol#]%[>:rB[\3Y(ph0]tE#)kpW/QOfHUdCMNECMVOeE23uDH/#B2EXfe\'X/VOSdR_F7[e/HNFa(m_]%c%8dp"UCY^6%Z7o^TDD;l"0[.MUK=[#0`VP:CA;d5I-=4^MQaXm*B;pA/rN`k2![B0lA*\s$2.L6ZUQ4QH(--.!lZP(JbfpR[BP"@k9m%A`0r_[#+rYk^1mOstk"4hgSCNo5pj*M.IfmBVCfc0O(j)YntUY)&_[.ff,Rq$F#Z5\9)fa[2Rkc,kB>'QL-36Y6bNS-mLkg/A`nTX#[H$1j^cDT>uHl$SlV&o&thO2OBjgqd?=W2/I]C?j+EMYi409rTVA'J?@_:))4#Z/Hq@neAj93si!iUM13XK<4!a'2ZPX[J.2dOU33d\]hcOkCOMZ%Kh-qKqtOI,Y'%?NpH0R&=G:?Yb%ilTN/"2m5nbA]49@7h+,jo4:k[W+O>k\Km35*OPFjRN/(B[5(=RTd4$@:%Xp%pW;=Sp$m7g#4^?8o=d+`?ZYXQ\"e6YV-/i8>H;U05tr\(/B]<gGRU\X/TEcV<UV]RYg`7)hm3,l&"K5[V^"t.9h;j'AY*ReNFGNqM:=J_IXV+LR!Ulchu3H.BC(-0(%>S5^34BYk!QO;cZ%8/[,$!Zfp9nOWOjC(<oIe/\%^IdB5T.Cf_'OS[Z*>ui+a;Z<23HMNjJi+rK=k!r4]ltm/I'MR?*b<*L2tfn(dSJI_R8AADUOjV].Kgk/'d#Et4[KUFR\KKN)EXA5KYk7`SE[\b<iLfu(XnP<0dHN0LFh4N;Z(P;I_94qd!$F>iu8n)!EKg!o`q!:Se(f2<oC'jV6ReNk3m/O^qK:t8NAf#![a4>/94FX3(!;:S.>Giae58DFDI#RB2nWcb>=W24^0,cQB!GES8;Bkh-\UM/?Fl<nl"VO[fp,Xtj)Ylk[-U+Q`4>S4dpo>^u9KDn(5m_=2NIk,Gl?csN%fsi\j]m64%(uF,kD1&ehLH4!+f7#nY]4Y%(kjU?+c+LAcR;o9##2uQj[,s61\1S(fYtOk]n7Ud:_H_Q``Var63F/OOfN#FBrR2fdG&CU8e[8V)%%TR2iKJ9BZ7eTgM_@&$LnK/][HoHfL"k7^^6K"_J`'^tNM[4KdqUTA$"GL"Rg2/RIeG&bi:n>_QhcM\]H%%D^LL;_rj&?VQnH4L`FHA@in>7g*S\%OZP_J(>)PJMZ8er!1m):W"`6?$bS!H]*EWl$XSttB=6Vr:4`)!6GLkBEh4#a`Eanc[2$G%>0t424F81&tN?&IV2H'i`6]d#MO"F9D.``@bR?`=.hL*$Z+.T,@=XZu9i`)9paWsP*N&%F=NKo3_aSPiG^O%$5CT-q;5kQ4$oP[`;f55Z&:[B*uep@W%[8hA:LtWdm"[faWr=%@!K[i(&SQ$H=F@'`BR:W@sQW19&aR$iFl^klFSPRl7-`cqf/TA<PY;W6[ASk+3SpI/mgY6?W98CI6a]V[jeTJ4;6UlZ!k'*8,]?&4_8Xi@I%2C``,r0`0l!]I@'Y/&m6@q%"9M7)IUQS25T76K'42:S[Hl)Sfo/E_aIeIDWmMauI4Zehm4LW>gGTOr`RoYE<];[_'S"!t\R+hFa4c\:/KkW'50\!4A4Nh"u"YAY(!0>f>m,-ptnTVHk8*k/[44e%Tl?gRSlS_alg"eWijgqZQd8]f<?1V97ni/a$<f[cX&61rT@8dT/VO.W8eIW&ST!)thla!nnWeu!\)HNbLAkD-D"&.iJMoQd<DdmO#%EA^7IeI`07JpucT9fFE])!B,O'$7JhWdi$:D=b'B(!65V5'J_Ba"&G4DfK\oN@`u\1oi`9gt8d<79hUB2L6CdDuCl%GX*&e\1t_f@fSmmTks-llCYf@?)nQgs883Pk$ph-)Ic=Whu)O,DaN>9E^U1Zu\N79.1;bLu9@mQ.-Ln.VU<sl/Se@PQ:5G/e*fjP_'bn:EbsW#EXB2hRpBPpdh%JT6uCST5%te?1l2JFDHdZZaNYZ`?*_i%(.f:.E:K&)j`XNa28'kZ)Zk8Wuj`g$QVrfLogUVK_kTRC:qcX*080(SVtd.9$OuV]4DW_Bj#%:TjaDE3NT'",]QdE!EW9!g0K8>W8/*BB=@J(@VhP@-OgbI[Z=3JTA5;oAH7kX-f;Vj&&=7eKD`4Y!1)4'PHt0BoQ=1n[qES=2WXhG^:2,OhqR&`*`/d)$uS0%mTrVm[iqkE_G8arD%*faJ?lM[!$&2"J'0(q\&1AEqpV@P_KmiNQQ'"]Q`rDDkM0:FF8l4JY0luc<.DkB%tqj@;Q(@3Tq\B/PLCa1YkIsKg/om7^3k>H>*=i!VJ2lqD%6?,Fh*MdIl^P9oC(Pf+$]c*PZP\Nk&ZmT/Eb50ZeRYB!%$,3h9h)3P@484IV^m];"#=(-"_TeR!*@o%2MO8Vq]^t>+eF6"<e$Zf2MUQra0"KIViUR:/g4Cb004qcFp!u:i0o$HcpPK<MHAG;r]>_WAJsC.um6N4Lg1SR7!4e6JGAO>h7TGmKTS:V)uuPX!5DYH(iY4-sR>tTPKq8fAF9pLU3uIrrCriep].F7=5ohI/a25q4-LAcZ$kp%W%G@/LLJtDTL^ui6?FlW[kY^-Qq&>B:ELeS$-ifdKTM2.4]\n$%RM9Y(QOuHsObiZ@A?CRk$-6aGDE&2=J-rH#BP!R[gOuWp<j?rp%3smD("$23L30gK@eW7AKstYV+VHY&!pM[-f]'RCrNEZsDpU,9IE1(GIQc:\";YpTl+8hr0X9+.[gQ?.&ZP/,Fa2pE*Yjeh1!e(S=mr/>h7K`Cj,u:UrB,l,$J1pI<H`Pgji^6C%>gb$(D?dR7?Z,GP[^+?haVO311J<Rs>+f9eb@g!pfF>m1^;<Dut-nqdMAd:RRiEu@hBSD1TAC$K5gC8e-TS&ZbI@ZJTDjKVhb`A:BPWFMrYSO$T@Oh`)2'Sod\U]?OV82`[1mXj_Ri?<]nQ%ib''=n*OmB*X_Xu3VV-O8Ore_6nH'1YagR6J:*f@IhNJHEMj9gqL5D]p58<-*Q+Hp.cIOep+\r^C77R6%*A;7:ImY=?#HlAVer:Kt2AC8td&7%cC.9eDT8aT23-T!R1CYcj:O2f"dY[!;TN**JtI+C"D.p[<:Gn,rJQHj'FO:Uotf&is1(G4j^:=SD1Rm#B3#pNHDjH^=sPFXB\"'ffRIR)i.a0eH`u"OBYtVP'`NBG*gpUeopo^Vo$kmI<R&4(^"W5P;;9]9dPJ;\-D4Q>:I-%F_n0=NKcAlPCX#IWH`89okr)FHK2FoIs0.nj]e'=C9dC$at$,%;h'"nOk?FQ?adBBr"!]Be:P`<O`7U'O6&Lqq9Ng:5.r9P?h>&qFeU"gM-B5<,[(BW4,79hO(fn\4iE7oat6Oe;3!UoJoTNI6;X/<OC1A=[c='9a%`DMVuX#O&^>CG&1FX=n^.b^i01,\`o9H3OUjm%!D@!e:qZ%Br20iAYlQ'X,/1#WJ.+GVO\JnSK1^_[:L@1I6=m%YX_Vd0[h:&W+99A+TDF<b.nQWLa(lOIeU#%Hi=Xjr0)([N5&k8[RY6&]oRf>Xj1Oe``(qnkf3;8'+9^RA[6IS4i*AID_->aK,[SO;,KN*<Z4tP):ccl<"<"*"oeQS$s#kA]Q1VsY]/?,),!nlal+b^IlTs(EL>H#FnN.b\SC:HNfo![MC&tZ/m'ZD.:U,JY_R\9g1]k8_c%O'$bU=^._pkSVC_(]WhDp.^B<B,d4bDC9<Ru;GPSQE!&=K;kfb&j46*3^l7U'A^:QZ_F_)=!BD1N19r5GtK*POdR&mI8:L*c5VQ*$9;`+*gP`mrP1kS_,Vu.pkBPlP&c_$UGPL]HNW]m$/I=8adL<i]h2&+]f]@\.MJBrB+18:fo;,rdFWOBQH:#fr`Q<.78%$&ZU8+iAa531$id@j_\WMb=X8Q:SI^,]n(ZP)?oBaq4:2E1C!ImEG]l)q#]#M,BVVYe-3G+WLAB)KWV+*VNqm=qC]mG-M.ROX[gk(^0%(-9ZfFZ`Y\Pqa-@BWC$KU'W'5394AQ3u>%X+)Yns_:Li@Zu?uM@d^63a)2?g\ZsZ[9Kl4<aHK'TV5ZsaW2-DL-`<LlbtV%R9,"+WX9P,n>&)c:BklRdU7PrD/2F/GFgrXRr`"D6qLU=[p[<Fan"9AG#P*/rgRBL]_;Ti6oq"(UB9j!rZ+IX9p<FdCNrC#7h1rB3p?OE2E1g1l.L9#ohW3-lkl1X9oRAL\_4.RM@kk[?ZDd'LBd2<$?aG4A$',M=hE!)EIKO`UN+5k<R^ur.*;sc/S#geGZ884V;l^jnTrYhArX*:uBeB=r++Es!5KiBg4+%/0=LEL>5OgD*1)jSLDb[tfe_XSq](aM>h]'m]mHCi4H"=hB9qTX/@'LR?P/kC#_i17]N`dMpE5b*JYMr@KmJ*=CP+sgukUsQL_="GIM+e]FhKeM9\@4Z_bi08@T"T.7ad1"@MoX6ag.8&Rk\4a.hDHi$JaGm[gA"sfA:/5CNbM<[/FlLdd`?ulBdMQ/Y+Q5g$esRPcM:-2U:q$5b5"WX^G:05XS34hn(rf=p$O302bl<;2s/c4iTPU"Yr<2-m+CUs`no$OpAS@&qpTXfe4A+ho!Ll+#c'$j.Z%Hor4]ltr/L.t](m5u)_3S4m=)+2g,'a%3CUTi<YC<29sOGA?[Ze0W5<"![$Zf'UthB\R@MS2R8Ln@W>$cL+gu@c9T:Z*[[lK]UKA;'7@n2C"[)6P&2D2iNM]hbj;\%\qq[Wd3hG7-qqYoW#P*cI0Cb7g05pdYl0bn53"M2.l&tF-[q'Cqm`=:RlqUm!\i78BLY*5;m0q9dZYX)P/%TGXGa=ea-)EofKHt2+Z<,QU!6a]fmn*G6ln=VeH*XaNT'>V\c1bSX[hVs7h-!niKhl5sBX`HXGW,7c.oV,AMYufk.L7._!f[fV:-GgYD4EdS.92b3Vf],DC6kGi4O1$CVA%6C:?FFa+MS#>a1ls^rUJ<!GOeP,4$TB"Et_QFlOMn,4+j_\mM:^2P/1/[2R_ehc&BkD;e@`V1jMc*eJ*)1XOQg]/7dR=+(e`b3m2115?mT*VsF`so"--O2U5N?m]:7_I:b++]*4\"P)CPZ%S%Tu4`qI&;p)mI'T""IE'a3b=\/dF/O^CHQ`$j;i0a[&(61g5i&VFl83]phn(u6C^ouk=nN6P\ou?OeO,08A26aMar8,cP>F-A"hYXp5<*!n'_.#=W<lL3X)19DG*%)DPVN8V.XBL^oSP2TZr[N:TkWad54)o($O1SaF[<Bj\gs*I;<-^XQ\2R*h):ldenA_=dc,GdcePjNd58OZOd?ZknCL!$1iNQG>$kh$!+_Y;QD`ipK9//198FNQ[EX%aJ%R'^CVrhp5O,2];)m(RcTB56-m=+$JGfn/!HZ!YiR9V*)fpQT>L,tj-ako0i+bec79!Y]NU0=b*Y(A^eU0+EnBSMRd^E`_,r-nH[ZJjG#+SsChfU*!qM/.(Y=$:^_4gus(=OLsOZaqiUGhp>hWMiorBDYl"P,/agAWedGhFt'k)4H(SAEb>=M+MCRC.TUZ?s5"SA<nEVcB9jV^V>,hGX(.-^WI$+d)np5b*o=B>pWY.F8&uUE32n+]Sh_)de2ESiqjQmJh%2u;H62c=g#cEUAk4Hm=-d&nj9nE]r.\A:Jc#Yp0KRc9MFfiKZaSGLG/A+WR;'P'57O='66sFX7j>G?g^=?ha+;K2ZEbUE<(?8Z+p)2pUg(mBCKj!ht$^1'@D:BHErU2qV$A6=1bb_H@5_Wh%dKFgQBNcYrOD\S'Q"(k2=NqZPE95,pY,3;5%HsN\j^p'h,;'EVRAt^Cn-QoliZ;>()+2--K)o.risJZan5KSpmi&L4Z`jPKIc*Sm*RFOfG4s;o[&0km7tPWiE(QShC\:_UACS17V9AQSPiOP!\`FWjIfW]=TjK!VQA;pTP%)5Eo6cIZO<0fK[S-Y'SE5i]^96IS6n#gW+Y@G"2DQ@Ib/hT0M-")'IV#/G2cfTNm0*`j!l8e,:L!lmV3"!9NnDGH?6dmba?m5@nErrTCl[2f4$'gp?H$eR+?;WS[4A[hH`hlS>eSBa%b3W/_#nIq%9n;f/$f-<b6@'^iLML7+m*cSI'iK6^"ESA`"R^iAi"cdu`Nmagd>\_m?a^1aCcm&nUd40,Q/L,tp7Y8^?#g=t'[?af\4'H%eq@'6/kWtUYb24>=Q@V-%-(^'-VmnKR0lj]Mt2BM(ZP.,:HD7,qg4,/b6RHWb5_<t!&<Z<Vb'kJqY<Dpq%"`0"#7`uthWCS-RDc=Oo9G:@K$Umo,ONO5]/KC^!E#D2X-!9^u*rYGrr!!(&T+F5QDU@;<(ZGq@c>4N1ft3Fc]/PEbDgh'ppF\flLrM=oL8G<kj-e+jcpnfQ'f!SI)]qo[oBa'd;>=#YletUqh4%d3f$qh/9K)Ugd:`1g5#6<=/^l"P:EMoCe?_S@\?\+4WDP*HWCY]BO!J)e?5ip'^dU(>\/kq@,ZuE(1p^q>>p+bM\R//)p[;i]SKH%qi]$HNlDd%?q/t3>rlNo>9Ve*DTpLBXQ.nCT@V=i$'XMBEDXuQ4Gl6tF9#qS[Y*_iR)$GgSX/DL579?+G?P'q9I)ss)rH[rA@+&sU2DVi6]6b\9AUY;5m;/kd#UIK.c,YX=Urq_(U*Wg<KLjV#C5B808uSD(bMb1Dg0mX<VHSf'[D]nM3FQqZ=t*:KTd/hUB)I;MhU%n<YPDH$:&\35)mK25idM8]@B_ng].s3+G<Y`W\Lm'-WlsD+n_l4g8Prb5&^\qSdAn9"`YmW&/Be0L9)LmJ2pd$Y[_D4a4UI&%R-[lKcdH\o^tY?!eo"*jne;r&`_nBNeO^BOe&+iudYJ8eP/R2`iPFpJDVg+m0rZWK7&qlQBj+OgX.a?(J,jrjYfA-hPJ<H->Nb)io.$j+]&rfO8%>KV_Ulc>2[hbPI`TLfQOf/DWfFhd_1I*s9hc$p#staMA0G.MJZH1XZ6m'VB`(0;I'BOETi'E!8%YbkoXgVnVW#_=[3a[/1a=)6]]Rp`:bcmuiJ'1N8-"4@j'&=9eQu`+[[mr76Tf'YnGql-Y:GE&lFIaP%J4p2+((k`m='K\h6;5ihUJ.qn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAn)"$3hYlp"rU8VAmnk2%=KX$KErQ+E4u#F\HhXkXrr<'9b3F7l=Y?iA4fd?UMVQ8K+mcQM3=Htqm`pfd`a_^V9./Q9OK4_jM'(L:F"DY5rrBomkW7`InUmWHm(M#a[[&4$jqj\mf\M%/lo]ts6iA(p723.Sbl7ZSon>7<(Y]fLcBWM_X]7JA@d"^'K$lP!*\-<NJNntmX\DG/;\o76NYs.DUC+HE3f1W3hnA@er3,%o;h$A@jkie?13ni0eu/9tnL>!URG9b_/[:qk?m=ee^Q/hfc>BY#iSE/R]pQ"D/997ee)dlsdS0$@<Re#TT%a/S`JKB/B>bX+27X]m$87=n!>ZIrQc7E^1=c/eqP.c%3k$PlU<Ds34@Vf?N$OV8`Eumc4KQr47*;5n>4(7#!J:t?]OMJ3&\F]qf``'N)<4e`;;$4;1B;[1qYU#ncg9$UGPCQPV16@uZ$f!*r`VH,:#.noZ8Mp<:RqAt4U,Q"qQ"FUp3ro']`mtA3a?6.g>/=AdMV6h4P8mJV38AEeItA.0gmH9=e9:TDuLG26eAaG!"1j)*m*47bA#n$jUTJ"P9[@+-53Vhdq+lG409X"W5@`0)m!`;ERI^sni]n&bpl@+EJesC)G#LPcWXAb;@9t7+HQ<:3EN,UNiC5#Q9r`(QE#p2'tM&QD?..)*qs]iamu'?;L^2Mjo5<RZEkG9_6fm1UXLr7bhhR<R/N_go!iepR))-qS(cMce\3c*%$a3\1pi?V1/UC!WmjWFULSes_Ajjd_1.<'D6/In/[sa'DR`A(:H=0*gY%J^HL8iu93%1lct@Pc(+-J'XCQo6NG:r&_IisJ<:,5RgUL)o42`k\JiAiMMFLq[fXtuFb)Aj?#%0Zpp[<8km,\%lp[<S*msb$"IeW;[p[<D/J&8Fo*BRX+_S-F[r7C>-rn<t_,4"T7fc*khIQZu"^tKOQ;"h:Yr/*KE^taDe]$GA*p\%)WG5QKWO)3BG;;t%p853)UW/,2,r;1IsG?=A$ipBghD>i3+*gTNs8,_,VllMnU>ISP$;THNqDW!C!ZSUFl.ka9$lS1mBPp2\*;%5A_Tm4fQ)3=q@OHcl:_mWaG[Q4EjpnO^[MKkKqOn[S-P9E]e1FA%61'6^Jc,[SGhkpeY(\fU-qmZJVqn)bZ+8cB=-ea%RrX8F^Igc5fp)i?[_Z%TrpAQ/fnS-D8\%SrLT>Q/5j8T+3I?3lYZ)%@6r%l1e2u%<C5I(20p:o\'A+mK]?9d37gJ8UY18^$=j3sbqkg=5c/2ZV?`g_B.`P)0'Vn([[HhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L]gi#%iD<Woc-,O)JtM7BZ9Ob,?[#3k6b2@D1%5FDnK#M;T&$99@?&*ahCZ/4rrAfUO(iKc`Vl99X!rdA)UojTWD"W8LA.n/o=r<6Ckd#jfD7Ma?SqJCAAMF$no^W#S^s2-`2CcG!tNj!C/)WcS[6lFMh''S&)3OFLdk!mdf%6h6i!5(C"Ok2dUE.+I/F^fWm)p\>"#A$-)&nqq!2VYU4"r))V7^YqYU$#@(oiQ5Ft;F9kC:gR(mHe2uFK/YI?se/GK#pG[8ukrR)A+UiU_)dDUF%fpJu%nkg-b=LUJ4m*d'm2j'm_<MV8H`;]fnl2'PV&"%_<q1[i-2>C!cm&B84DL.fI!1&mJ:&BI]pL`0Rqa[M,j@nE+m?Xh'1Gb3P5KP8@1p/X"4.S)arr=He6BVioa#,Ru67(*!YEAJ7hnAH+rr<A"Mtpr#n."@U>LhKo-Oa55VE^32*q%!TE.9&^]2^;%crKdg(Mm]-(>$N6C,X_$[bX+[^:+O]4M%WBjG$OWaFD<C4qpHU4eqdh<Os\jO)iI8`EClY(p%(_eShjIe<M!1)hc;p0Q\/bE5<J&%Q:Jf)]^)5'"q\U@Oc1Ihua@'$(6=2rUX$h-#oon#,*8SNDRZ6(e,ninlo21He=D8^O'2^pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV2(L^O,^iHhY:%pV6a]~>endstream
|
39 |
+
endobj
|
40 |
+
% 'F2': class PDFType1Font
|
41 |
+
4 0 obj
|
42 |
+
% Font Helvetica-Bold
|
43 |
+
<< /BaseFont /Helvetica-Bold
|
44 |
+
/Encoding /WinAnsiEncoding
|
45 |
+
/Name /F2
|
46 |
+
/Subtype /Type1
|
47 |
+
/Type /Font >>
|
48 |
+
endobj
|
49 |
+
% 'FormXob.ccf2ce60accb2f71ebb323971f816d0f': class PDFImageXObject
|
50 |
+
5 0 obj
|
51 |
+
<< /BitsPerComponent 8
|
52 |
+
/ColorSpace /DeviceRGB
|
53 |
+
/Filter [ /ASCII85Decode
|
54 |
+
/FlateDecode ]
|
55 |
+
/Height 76
|
56 |
+
/Length 8199
|
57 |
+
/Subtype /Image
|
58 |
+
/Type /XObject
|
59 |
+
/Width 214 >>
|
60 |
+
stream
|
61 |
+
Gb"/l>>S@%QH()FWZP,%aWr[5e4cJ1Be!,.a?q_J1=Jga8_[`$e!90>/sGRB6<@6g;HD5cFAct&i@60`gHgWS:t-=Z_17@Yn4I@^6kP6"5s`EsTFjWR"6#a,GEsj?qjd9JTr:Q5?F>\Ph`:S>p0Rd4/pm&.LdiCFEob<(,=db63HF3%OX!AV*'&'#aH7];NZ:'"jN*H.7ueQLEob<(,=db63HF3%OX!AV*'&'#aH7];NZ:'"jN*H.7ueQLEob<h&!]n^3E*8.DhX6qm+f-ogU?fSmJ\:3"'7E_*]hm'26)B`p0:a,Z?O.=W[6tSLS`eVQ2@&R[9-:QN1YEgT7PNnmVe5(e4fh'aFO)no=LS729gVVZ"nA\Bi<)W8T1LC:!;3h\>AUef>TF]2c^pJecQT1'lRq+)B,nNVW$b']_-WKAoFI[D3<DKXo@gh`.tCkVl+]Fm=qgY>.\YmWH`hGib1O,I.cc4r.;snNpki<]=Oko[(icH^V<#'7bcYN[Vans>LFq%;cRI3J=lpt[R09ImLH<0L,Bo(lg=)IqFFg.ZXtM]Us)M-2Ue;uns@SRZROY\f4WW:FeJD]p[[bpTD[1<adfo7CiF?H!E!SlH2ccZ)*e,Ro_Y5J&XNFT5<d4n=X!SA3LTp;kudq3SsoAk)qgQ1gWWp4f_bI0TCVWHINC$:LX`_af-(1g5+MAtUT_o?a`FFD-/JIB%'>V,]"h7;fQ$>BTA,\s=T5'CVik!$qH;qEppV'.Gkbb>IdYQQBoBa57>pndc&m8CX3&Q-FruQ*:t1=+q!5S<+rC5Ni]8YS4YK%7USB&/fgUf8:RaORMmTq$-6f"%kKg=a/54C2YZg,Vm#OA;=&]<+bkrk;5U+lpmU/sl@'p]5CfH[_QA3!"8"d+pq=5CZB7dp%R@.Y25EB3oh`Ka.)r^<Cq>8Nl1kleq>C%EN::-Ynp]$dO.E[hQop=nR4Ibofs"u>N<^e-qPe9K>+orNKCt4@d'$4$'1SX./%FLgf@1W/3gOH,biP>h7>ekmZ!'FY>$U?K8Xdj=!cWE()G3UP\Pbq%AAoS4F_4*Fc-VhhE-Ik`WKI*'#jraLiN"`e?"ZeY[PaM#qCXsUE^aA(!+sf)]TqnQ^E=GH43Eh(K6_Go-8sP[.O!knrbatF98>I@;M'A\([*Ect&BGh7K5u538FX"_ZD<.Ga@"59['Lccob#?4DHb[+Sl*7b8AqO.qpL`gB+uOC).?+A+oV4qnuBSPp+\TJJHCQ4mjtoqe%bq,KNWGG/+U9+^h8j.+D-=irW+\Q(jHAt0mr+^FS/!Bl3'=i9OD(Lkg\kBmZV9:n;)oG30CLsnD&`@AoS301h<l6SOp0>RgArbPiWE<Rk3%IOdE@3loKCNeG7R!(P+M$"^V'[c_X1-9T9c+CAgN<*(LU?>Q>_kT:_=b9n]fkd3>B=%ZE4*_4*u#&m1l-I)?E#E^0Hf>,bZ2-peRd2f59=9Opn9/kTsOQ7Z.:>=9T>TG?2O_iG+[1LnsfF7nfg.tO<b6k_N:rM1]6#F.scU'_Gd,=>[911eW$Msi=2s4J>^0U5X8H+ch?RbLSeB/XBH&<+k:[_q)05Ob?Qf/+b7R'gJ*q,@qSQ/b4+\[<]`#R"j8V4llI8b7eAa'P5_'8d3'qlTnUX/\kgAUaP3G?"Crd2b5n1ecItcO7\pMt.R!-?>/W[B2nQPQ9#4!4ELVc6!PO+p.!:YZEu;XnC1Cq"Hk!6\@a"pA6s^B-krV?YnL6Vh7SW!`;RHPTg)>q^)6lPe!W2s%6Y5W;um?bsW\u>6#=G=p`Dd!ZctrWK/S5[\(5e,--Sd9`MVug`E*>R_@u*\faA\Kr"unHTn%m$,@4"E=q><Kb5qE>"47f)V(`h"gipt5o2+'-p[D+,QNq!@mB)]PSk8Sq-lWdF<X=-+aT[YS+$Mi3cNdhM3Ob*s82C;ofT54<(AM+_H;^Q&N<"5#p,d.&.!0mN?fI2pGJMk7hu.X"WKuW+qOo1D$`k$mFYFD94a"1LdMgn+-X-tPu/)qccO<rEIm9]c`/V>b6u3&0e>M[^n.k,AdPn'jp2B2SO(/af'pLL(rn"R2a9!X%&B@[@+8,-C+]MqRKW5[$BWrW*:]@f"G(@3%Qn^d`,gLmVN5U"!o#fJFTeYu*!(n)`@jj%FSZ=(,r-d?!3t@iE2!uE1JkPGB0/-[FX7QS_BLA[gt3g4.Gt_[KUAZgmN:q.0MSAu,2G'W;1le0pKr-LL]WkV=,U/+?\/QX,_)d]&6QN=;.(r:^baJ1[f_3"5t!,Y5]jV%11OFVZ%D)\'=9;_/M/Ou:a@ZE""q9S=75G-\MLHhB31Fu8niM"l@d^)Qm.VS-)II;ie3<RqM>BjYU/9_\nM:6BIAJ6ScJG^B=R6m?nX>K"G1/=j^\IN4)15WdHs1ATeQa?")u]rfBh=o!p(VGCT&M?aRJ]GHn<j2D^m8+qP`!CV+Un"0nDgfr9S48Ml2IO)]KH/D@@,%TYB8i4E(0>opj:b(ZS_DBGAYe65BX[S5GYu=[HY!K:kYd#\KZX2r>^f$RLD?5L(^?%T4J&BPB]/O%]\N\?**,5T15c`EO;>=m+(sgDfbs?D"BpTXa8+)PWuMN&]+SR,Id#3>,(2DR$FNPaRAs%4k_r^0%WC!\"3M!tCtr('9Q+*"U8jrUM0EjK$m`*Y.g'Lb]ZqU*]T&Pe9IpJ^KX;5[r';J,`[>l:NiE(Mp-9)HOM`lECK3aq&)@/H:M36mJ[*A4D(ke*ndfW<$s9ggh.,FNM,M4h\a69h.V0DuR+1lD-H<=L7ecX&b(r`#dpNKqTfOE:YhI;4?VUV2+=L.EBi:&j]/E+s80&hm,JcE/3hg7>E+L,-l^]VnDqT>ob[4-nCqFUllTOBBlQQ8X;GW[*T>B(h8KE'k["L+_sl,$icOJUtP(OMG$dIJHJdS__;so5L+Qt<M@;fQD&q9=IWmQMR9cGGL'4:J>G+:mI`^Hc^-9Yc!4'l^+5YBZ?tk4Qt7!^if]^V#Dj#U&j1][rH1'3fra#;M$a=@b6eTnMA(N%_2M'uVF%!Z*X/!N'7jWVFYD'7$>fa68CZ,:i#M+nDuO<hJm8Kef`<%>2G?U/Q!eTATgmfiNs>'q,sUm8MP_IY3Apfqp9^>aWftD>`nBZ:&bt:;2"6gBYUjR$`RO76fP\Op_q4VuB.p[c6dW!k%;m&L3!c>*7ph[BOsJWX@e9T+7HO:rZ9\nFM5:&5bcN"L_'f#S39%rJRG4\Xa)isS-=L6@`7NZ?3E]L88hm)#,WtT9AIF'pH07t3#`M.qiiGJ!6UTAlO1[+=>eqrm]JrZ2HUg!r75]cZ@jY?jE`g*nhTI9t#>'FKlP<P!=BcT\brn>qMB`q'haF-iI6:UEV8*D)"G'gA_%4;Z%tVO9A9Hn-]N7=$g%jGX\L7M*l)=kjJSf^g<s'cO-aJHA3'4m(dPr/%YP<LAq'aZUTFO2:_(<U*LU\12$AM:27D_[V,Zl6K&P1AE!TJ<Q6Aq;E1F</XoOK(t:V<SP<S+^SYF+Q&0#TJ$3:bLKM*NU(H?Dblcq*+g&F[gmf!n_!-"m]cK,+OM+9\>]M=JPb6`Ds`4WRY[MF;D%7q>U3#hm*6$pS\oF<YS'3#L;0&BMEE#C?5W<-#h)WX5i2WNi%4gpBWt@O+.sQ3SlRRgop&UC7D[o\OmFS<KEm#@e+mX?"q_eDEKr&n;[sC$f00[Yh;R+_?Zie;+k$0NnU>Fu?.oZ-<ECiX5ALG'["n&JK^<!Bb2$4B,9d:Vu5j[eWT:+#8/c]5f%`E(^El<&]F!%/h,(8nKVjq/Z!s_[R4JOeYFYLK!TS>'$B!61%9XKDJIW1-90gS9,MJBfE8f&Q`HfH3/tT?"V$DNd'jgp*9[[L\&6s'&ib]Ls2^+4+k=-B,$4)7!ZL$I5U02<%i4S04IEq"i3j;@<Ci$J_XC3;PT9<]cemm6>.3W4j\Zo-&b*Rg29<;0BZ-nc<$N!@Z0^ap$@QccXP,M"4n7kBThqd_[fI4,p<X#&E@?5@<W-2=FAMC,ZG+q"'t23akjD><$LXZETkscLqe_I`a+g'D-=je>K1SuD,o0q\M%.!30E,OlCAVhjf.G>b[`bWEL*L#eCW<-X/76j15?)i@uEV*bP!Ug&<%1=l+U/*]%mWK:F;_7?[P(]6kFhJKe//h`r,8[>t:Qh#FZUt0[0J\>AQlaMaYiKK2OjDQ][[B\d00m.F#f%q)LGB,V)uW6Y7#WTsT)Ms)so+#X"'.]=Kb:?eAV\\?-%TH+S(Aq%p$AC.D+"Yq!.-V:\:[^*a2>Duf<Sk(YIZS/&7/)DqR'n[fFe)NHC;HVlJkbatGD]nN/5T<IsQRVVWb*O.7p0/V6I$Y^IrkX0F=GYB:n'7nRD^H[Pn`2PZ@M#%]S@$8ShqG!Ij,X+QHM-+JJl[eB1#oeY<YPK,U<ph%F5E7;sDrl@SpSBC_W]1WB[MXiG,INnYNY<h?$'peB@G1/-oE^b4`?oCIbmKK46ORCE7QP,U)/5rSYk5+^ieE;G!tg?D%%G`^=fX:0f	)jl$NFR0/$B</fea0.F%^.jQT'h]ea\F!?PX!cd()S&!Te[5VP`drBQmkQp/:otW[H0&BK,VT4rjZ^$c@&o7,cK_>7i<L%G>b?hD$2l%FCX\[9bpfFT4WN>/po<Do_YXg$kU15gk8c&+D>o>pU#B'K'&_aYL'-VuVJ%m`l.^*Ja#tZ]C+W]uTasW.L4V=j;]p45BBr4C-R9NL6bspWH9Uq=p#c&3,U6*V,q>%rJfePDrY/SLb+]&d\=kl47g:X6B21b4Q"RZXnR9Q\2ES.W%!%97:V,tTj"iSK6S8$HMl['gmD/G,VGI@<_9nfH`Pr$if$]<;pW#u_\JHUDW$(RYrXn_#/&La3HnoPE,MF4BIK`7nqHdt'*5rBgKAQ&R'B@CKG.#ZPoP6?FI)S:%>?mYDM\_&@pnM;Ho`dJ1VL,po!PIda7f<jlenA4Dr,gT1-:_g(IgL?G^itYZ%e3f1D"Ep<I"DII>,mH/EN>``=,g:Jo6lF-OEfss-%t,iC8Ao3VVbYQ),C5&`CcfrF!Ipmg`?*WM6K\'TE]8chW-:/$XLt&OQl9@"'/P53LK_,I<P5`uOdE@a4V3H(StKOlmgBdDhWJa5KdB0\a9sG<PJ;\3n=_)/SUs#1Ts?p%p.c[&&+B*r$C5F*(FD1AKO4Xcq)qMJMo2R-X_EMtcbGr&7:>o\f0Ar#NENN[((Q$Ent>ISh+R)W%NZN[?IG&I<nZ\,;?XY244suG*[7f_-91;T3`.ltNu^R.aH0?L*??.'b@!]`&nl@WOsZ\%^@TWug(hC'`@qE1Y:l2XEq1Am4WJT7!(+2+-B(-2%eu?cNjX"\__8JXi(GG<ABlHJ-Y>MQ96W4I--SNFML*="M0AQhIRq:NDur[qP9RU&%stZ0bu',nNSsSb$Irkn'2N>rS>9P!MX\*flEGd1R&s$n*J)'ZFkDC%##IDYlg!sA#m!TL6%n+Kg+$#BDqUB,Lr]=chLYUE`^\(rKk]]1],?8C3/#^"mF$<NC/M!7>9!j_\XC]l"NuoP7ueQLEob<(,=db63HF3%OX!AVmL1E4IT,6+"`?sRC$i"):Zs$tUS:[-h;qXl'0JZ4eC&e`6r'\"<-:5?(%knthcOl;e^s[*9(u@.3,u%%ld_%sqEN2N'@c2nhD"GL`9a>TJ+KQQf$0*+@t4Bg@WUY)S"9]#>8nW1D-kl\X%I$9/hSTUc<J'HgkEp%2UoJ=_=IBsVe0k+o6F?0rr1P?]_)ZbeBH6,?Lt^cFQ$]tOV=:0Ru;'c>J;noGk*4.i"4O?*G?H,22Lr.IY#+a=Xu"O4*?g6LSk+CXdlaejWDeFC:"q<8u4Tf++O7<p]t[rFai+M3IaS*91(RrD1u3Z7Q_=:E:gMR9#dQbF-h@Hgl:b&"7M!lUn7"eRBK`J0j:fi.OfYfh<#pT&^_tU2d_j,g!5MdX",nc+;5V9WAeH(MB;*]Xp8gZcREp.A[5h:J1c+4YC+6;BQ/deW4k7q4+T-<R(4_qrNhf+V6b*<(Wf.NKg;kWI40>i;nK]\6mZo?mD-B_,5b7>Xi#50_iifCS5jmF-2+JE#c'*RR-#Y)(]Y;J/qRO1hIb8!l3$V=)uJ&X)Nnu9D7fQ5qqA=XEX3X@6"cBZf$=&,ZZRMqPQH=1-sd.\4ShsA]X!E4k9i6U&)7V!*F,mfGH@Cs2:qtu0<i85o&s.jRZ;UiED?g!oqUqgL=e]l87!M_;/&,j*IO$$Rrk1C.B`9OV`2I8cjM2.1dNeUrs2/emRpWQIlAI5&bt>E4%Y#h\q?@SLP?X&7Zr=s7ha`^N+C<Kni^X6NgaS@:8d/abST-ZB7.dQ9Rf2OB$6S=#S^/(rUsctJ)H/BZFAFBUK>8]:h8!O-SiQm=pW%p1U_V>Pi8?QeGDiEm"&@FRBfqSV'S"Zhd1Q<2^3Oo:,L*6-ILH&1m'd2)0k]MAb*]"Qnc?<6QS"MNkrktqkt:GK)n"Cr0V0PpDg$!FA9L0`*YOlL:jGrB';4,?k+Cm"_LFkC*:n?3f$kQUUigj(_-7n8QtAhgkX;9!mksX-5n99EaXio8CR3KihS^-:^X?B_in^dn-I$ASe4Fu7GAd?LJfu-nAG_pKJ>_?o8>U1J.^&%g$@l.GGp;=8:L-F.T797!^`<TGEH'(Sq$Bt\I:7"M;FrKkU?d*IHepm%$V`L!=t,(P7%sj]l3n+io2:5V,Q1$Z`JeNAn03KB3"m:]J$OQ^tZ03N"nk`*qH^(;uqtJ4Z?AIo%gP9TYA=\*P<rm`W4.%b2U[o(A10\>fe5%@%Lb:(5UK4%N7U4A\LuAZkh9A:#Q+uV<>ng9HPP_K4DS+bq)+]!sA=/\ks4HV;I_TpHg.f7I%aqhVO(Z^eZGH491Ns0Of:eF<<3[I@quU7o&,s3=pO'pN`RjkGPQSX3&PPK6/24U8XKaj-"F[09hW\gG:M(0>7/[=CJ';.ZTYS64kX4Ttt-(&OZSk:Cnom9O<_]JYL'H)Po\,3V=fYi8>_:5rD,bS-VQR4d82?J\G3[cr=O`3eMT*&a@K*RV3_`lF/(9>uLkg!r7F5-3>dAXF["-`aM(lhe4&\M]pH:$Z`VD4u+5d;7\3>1(bof6,UG]7gSIt!98T=60A7+bl$l!Ifo`^%&:(A-tX,U":C=fq<fUVFI\k+cpq98#o'.`X+rbZ&8(,<fd&+8DkI2d4inr2)n(k@^gin^J`oIU*QWe'A0H_HRH$%cWADB:L>Q#E"R9'<_[snBU-%@Kj1rifE3Kn0k^eD`"(aS`SRUNeK8\a@JP$?Apg&J:UuU'X<'gd^#6J'K,`P3r52pikoqS?XXU)B_!`>,&1Xj5\\gVP$dN!k9&k3)u"V7=T\PTp>*e7uLOImX2fHUHsLU+8p=8F(1eUc<:!GX;"JLCcm`h4J%boDO)]^bHC%`Hi3$>\.gINW#3SHApZ"kf8;!!s?j&Eu7s61%1U=+2P4Hdca.*ekIVi6mE'=C'gA+V7qdVu?g9T`aPkpl.lGN)E1U*smcpKFZ4f3%d?"AFpEcjp]8.%B`M/N%0$*Ige<j&mpdFQb<n01+DW5T.HS$8[(h38:_.2/nU2aJnP)(93JV0r/a+u'F-V_r<FG;"6K,lZtRRA9#SDr8JsGu&t<d*qtMZl5:@N$,OE6sGVrkAkgBW(O.MMiNo4`s<+UsGmu?r:C'6pG65TjD=936;?WtLq,*]#b2.YjD?%F1B6lX$"!i<E"PV,TMI$J]CA@Z:rQsWM#PD&X^>Q*]*qq2@5!!<QL"C2Y"1'6Ylr**8l^!"0J!&-1pBMS&B2&=?QU5YF'=O']i&&J?.(os?<-h/tWKr7l[ZkuKu5tWlPd/a$(Gf2s:cr:2*5Tg'"#"$fQVda;+5p2PW4'8>X(I@(a8`UhS>uIiu*A&Ff774";M%N-%!aoD*&-6CY$/L8CdI:fpq3j>H,p.5_8Mc$q7u1J`0mlUObcHq?"g1[hJ;nON'(gld']/m]XRnuF\H<O[P\atoA*XQI>Y:-B3P4,EN\RUj)R:-0]_44Re8Lpt+j-4CN+CGe)[nn48:CR\_^LBY5`..gbOcJlb#@olZ&\b#$oPdS*Z]-Qr5@'[P^q)7r#eO_GKdXQ5E>.a@8AJm=&`KZ!KiuYY/^J,PMZNC:^H!Q&of.a@VFoOI_ajgm3%'kI2nM6-UYV9+=l_e\A<TK$-6QC1$E4+E<k_-!TqkiP5~>endstream
|
62 |
+
endobj
|
63 |
+
% 'Page1': class PDFPage
|
64 |
+
6 0 obj
|
65 |
+
% Page dictionary
|
66 |
+
<< /Contents 52 0 R
|
67 |
+
/MediaBox [ 0
|
68 |
+
0
|
69 |
+
595.2756
|
70 |
+
841.8898 ]
|
71 |
+
/Parent 51 0 R
|
72 |
+
/Resources << /Font 1 0 R
|
73 |
+
/ProcSet [ /PDF
|
74 |
+
/Text
|
75 |
+
/ImageB
|
76 |
+
/ImageC
|
77 |
+
/ImageI ]
|
78 |
+
/XObject << /FormXob.36022f2f4a38d530d012f5d48cb2ee15 3 0 R
|
79 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f 5 0 R >> >>
|
80 |
+
/Rotate 0
|
81 |
+
/Trans << >>
|
82 |
+
/Type /Page >>
|
83 |
+
endobj
|
84 |
+
% 'Annot.NUMBER1': class LinkAnnotation
|
85 |
+
7 0 obj
|
86 |
+
<< /Border [ 0
|
87 |
+
0
|
88 |
+
0 ]
|
89 |
+
/Contents ()
|
90 |
+
/Dest [ 28 0 R
|
91 |
+
/XYZ
|
92 |
+
62.69291
|
93 |
+
742.0687
|
94 |
+
0 ]
|
95 |
+
/Rect [ 62.69291
|
96 |
+
700.8187
|
97 |
+
124.9329
|
98 |
+
712.8187 ]
|
99 |
+
/Subtype /Link
|
100 |
+
/Type /Annot >>
|
101 |
+
endobj
|
102 |
+
% 'Annot.NUMBER2': class LinkAnnotation
|
103 |
+
8 0 obj
|
104 |
+
<< /Border [ 0
|
105 |
+
0
|
106 |
+
0 ]
|
107 |
+
/Contents ()
|
108 |
+
/Dest [ 28 0 R
|
109 |
+
/XYZ
|
110 |
+
62.69291
|
111 |
+
742.0687
|
112 |
+
0 ]
|
113 |
+
/Rect [ 527.0227
|
114 |
+
700.8187
|
115 |
+
532.5827
|
116 |
+
712.8187 ]
|
117 |
+
/Subtype /Link
|
118 |
+
/Type /Annot >>
|
119 |
+
endobj
|
120 |
+
% 'Annot.NUMBER3': class LinkAnnotation
|
121 |
+
9 0 obj
|
122 |
+
<< /Border [ 0
|
123 |
+
0
|
124 |
+
0 ]
|
125 |
+
/Contents ()
|
126 |
+
/Dest [ 28 0 R
|
127 |
+
/XYZ
|
128 |
+
62.69291
|
129 |
+
655.0687
|
130 |
+
0 ]
|
131 |
+
/Rect [ 62.69291
|
132 |
+
682.8187
|
133 |
+
159.9429
|
134 |
+
694.8187 ]
|
135 |
+
/Subtype /Link
|
136 |
+
/Type /Annot >>
|
137 |
+
endobj
|
138 |
+
% 'Annot.NUMBER4': class LinkAnnotation
|
139 |
+
10 0 obj
|
140 |
+
<< /Border [ 0
|
141 |
+
0
|
142 |
+
0 ]
|
143 |
+
/Contents ()
|
144 |
+
/Dest [ 28 0 R
|
145 |
+
/XYZ
|
146 |
+
62.69291
|
147 |
+
655.0687
|
148 |
+
0 ]
|
149 |
+
/Rect [ 527.0227
|
150 |
+
682.8187
|
151 |
+
532.5827
|
152 |
+
694.8187 ]
|
153 |
+
/Subtype /Link
|
154 |
+
/Type /Annot >>
|
155 |
+
endobj
|
156 |
+
% 'Annot.NUMBER5': class LinkAnnotation
|
157 |
+
11 0 obj
|
158 |
+
<< /Border [ 0
|
159 |
+
0
|
160 |
+
0 ]
|
161 |
+
/Contents ()
|
162 |
+
/Dest [ 28 0 R
|
163 |
+
/XYZ
|
164 |
+
62.69291
|
165 |
+
472.0687
|
166 |
+
0 ]
|
167 |
+
/Rect [ 62.69291
|
168 |
+
664.8187
|
169 |
+
129.3829
|
170 |
+
676.8187 ]
|
171 |
+
/Subtype /Link
|
172 |
+
/Type /Annot >>
|
173 |
+
endobj
|
174 |
+
% 'Annot.NUMBER6': class LinkAnnotation
|
175 |
+
12 0 obj
|
176 |
+
<< /Border [ 0
|
177 |
+
0
|
178 |
+
0 ]
|
179 |
+
/Contents ()
|
180 |
+
/Dest [ 28 0 R
|
181 |
+
/XYZ
|
182 |
+
62.69291
|
183 |
+
472.0687
|
184 |
+
0 ]
|
185 |
+
/Rect [ 527.0227
|
186 |
+
664.8187
|
187 |
+
532.5827
|
188 |
+
676.8187 ]
|
189 |
+
/Subtype /Link
|
190 |
+
/Type /Annot >>
|
191 |
+
endobj
|
192 |
+
% 'Annot.NUMBER7': class LinkAnnotation
|
193 |
+
13 0 obj
|
194 |
+
<< /Border [ 0
|
195 |
+
0
|
196 |
+
0 ]
|
197 |
+
/Contents ()
|
198 |
+
/Dest [ 29 0 R
|
199 |
+
/XYZ
|
200 |
+
62.69291
|
201 |
+
742.0687
|
202 |
+
0 ]
|
203 |
+
/Rect [ 62.69291
|
204 |
+
646.8187
|
205 |
+
142.1429
|
206 |
+
658.8187 ]
|
207 |
+
/Subtype /Link
|
208 |
+
/Type /Annot >>
|
209 |
+
endobj
|
210 |
+
% 'Annot.NUMBER8': class LinkAnnotation
|
211 |
+
14 0 obj
|
212 |
+
<< /Border [ 0
|
213 |
+
0
|
214 |
+
0 ]
|
215 |
+
/Contents ()
|
216 |
+
/Dest [ 29 0 R
|
217 |
+
/XYZ
|
218 |
+
62.69291
|
219 |
+
742.0687
|
220 |
+
0 ]
|
221 |
+
/Rect [ 527.0227
|
222 |
+
646.8187
|
223 |
+
532.5827
|
224 |
+
658.8187 ]
|
225 |
+
/Subtype /Link
|
226 |
+
/Type /Annot >>
|
227 |
+
endobj
|
228 |
+
% 'Annot.NUMBER9': class LinkAnnotation
|
229 |
+
15 0 obj
|
230 |
+
<< /Border [ 0
|
231 |
+
0
|
232 |
+
0 ]
|
233 |
+
/Contents ()
|
234 |
+
/Dest [ 29 0 R
|
235 |
+
/XYZ
|
236 |
+
62.69291
|
237 |
+
649.0687
|
238 |
+
0 ]
|
239 |
+
/Rect [ 82.69291
|
240 |
+
628.8187
|
241 |
+
217.2029
|
242 |
+
640.8187 ]
|
243 |
+
/Subtype /Link
|
244 |
+
/Type /Annot >>
|
245 |
+
endobj
|
246 |
+
% 'Annot.NUMBER10': class LinkAnnotation
|
247 |
+
16 0 obj
|
248 |
+
<< /Border [ 0
|
249 |
+
0
|
250 |
+
0 ]
|
251 |
+
/Contents ()
|
252 |
+
/Dest [ 29 0 R
|
253 |
+
/XYZ
|
254 |
+
62.69291
|
255 |
+
649.0687
|
256 |
+
0 ]
|
257 |
+
/Rect [ 527.0227
|
258 |
+
628.8187
|
259 |
+
532.5827
|
260 |
+
640.8187 ]
|
261 |
+
/Subtype /Link
|
262 |
+
/Type /Annot >>
|
263 |
+
endobj
|
264 |
+
% 'Annot.NUMBER11': class LinkAnnotation
|
265 |
+
17 0 obj
|
266 |
+
<< /Border [ 0
|
267 |
+
0
|
268 |
+
0 ]
|
269 |
+
/Contents ()
|
270 |
+
/Dest [ 29 0 R
|
271 |
+
/XYZ
|
272 |
+
62.69291
|
273 |
+
319.0687
|
274 |
+
0 ]
|
275 |
+
/Rect [ 82.69291
|
276 |
+
610.8187
|
277 |
+
254.4529
|
278 |
+
622.8187 ]
|
279 |
+
/Subtype /Link
|
280 |
+
/Type /Annot >>
|
281 |
+
endobj
|
282 |
+
% 'Annot.NUMBER12': class LinkAnnotation
|
283 |
+
18 0 obj
|
284 |
+
<< /Border [ 0
|
285 |
+
0
|
286 |
+
0 ]
|
287 |
+
/Contents ()
|
288 |
+
/Dest [ 29 0 R
|
289 |
+
/XYZ
|
290 |
+
62.69291
|
291 |
+
319.0687
|
292 |
+
0 ]
|
293 |
+
/Rect [ 527.0227
|
294 |
+
610.8187
|
295 |
+
532.5827
|
296 |
+
622.8187 ]
|
297 |
+
/Subtype /Link
|
298 |
+
/Type /Annot >>
|
299 |
+
endobj
|
300 |
+
% 'Annot.NUMBER13': class LinkAnnotation
|
301 |
+
19 0 obj
|
302 |
+
<< /Border [ 0
|
303 |
+
0
|
304 |
+
0 ]
|
305 |
+
/Contents ()
|
306 |
+
/Dest [ 30 0 R
|
307 |
+
/XYZ
|
308 |
+
62.69291
|
309 |
+
484.0687
|
310 |
+
0 ]
|
311 |
+
/Rect [ 82.69291
|
312 |
+
592.8187
|
313 |
+
223.3129
|
314 |
+
604.8187 ]
|
315 |
+
/Subtype /Link
|
316 |
+
/Type /Annot >>
|
317 |
+
endobj
|
318 |
+
% 'Annot.NUMBER14': class LinkAnnotation
|
319 |
+
20 0 obj
|
320 |
+
<< /Border [ 0
|
321 |
+
0
|
322 |
+
0 ]
|
323 |
+
/Contents ()
|
324 |
+
/Dest [ 30 0 R
|
325 |
+
/XYZ
|
326 |
+
62.69291
|
327 |
+
484.0687
|
328 |
+
0 ]
|
329 |
+
/Rect [ 527.0227
|
330 |
+
592.8187
|
331 |
+
532.5827
|
332 |
+
604.8187 ]
|
333 |
+
/Subtype /Link
|
334 |
+
/Type /Annot >>
|
335 |
+
endobj
|
336 |
+
% 'Annot.NUMBER15': class LinkAnnotation
|
337 |
+
21 0 obj
|
338 |
+
<< /Border [ 0
|
339 |
+
0
|
340 |
+
0 ]
|
341 |
+
/Contents ()
|
342 |
+
/Dest [ 32 0 R
|
343 |
+
/XYZ
|
344 |
+
62.69291
|
345 |
+
742.0687
|
346 |
+
0 ]
|
347 |
+
/Rect [ 82.69291
|
348 |
+
574.8187
|
349 |
+
263.3229
|
350 |
+
586.8187 ]
|
351 |
+
/Subtype /Link
|
352 |
+
/Type /Annot >>
|
353 |
+
endobj
|
354 |
+
% 'Annot.NUMBER16': class LinkAnnotation
|
355 |
+
22 0 obj
|
356 |
+
<< /Border [ 0
|
357 |
+
0
|
358 |
+
0 ]
|
359 |
+
/Contents ()
|
360 |
+
/Dest [ 32 0 R
|
361 |
+
/XYZ
|
362 |
+
62.69291
|
363 |
+
742.0687
|
364 |
+
0 ]
|
365 |
+
/Rect [ 527.0227
|
366 |
+
574.8187
|
367 |
+
532.5827
|
368 |
+
586.8187 ]
|
369 |
+
/Subtype /Link
|
370 |
+
/Type /Annot >>
|
371 |
+
endobj
|
372 |
+
% 'Annot.NUMBER17': class LinkAnnotation
|
373 |
+
23 0 obj
|
374 |
+
<< /Border [ 0
|
375 |
+
0
|
376 |
+
0 ]
|
377 |
+
/Contents ()
|
378 |
+
/Dest [ 35 0 R
|
379 |
+
/XYZ
|
380 |
+
62.69291
|
381 |
+
742.0687
|
382 |
+
0 ]
|
383 |
+
/Rect [ 62.69291
|
384 |
+
556.8187
|
385 |
+
184.9529
|
386 |
+
568.8187 ]
|
387 |
+
/Subtype /Link
|
388 |
+
/Type /Annot >>
|
389 |
+
endobj
|
390 |
+
% 'Annot.NUMBER18': class LinkAnnotation
|
391 |
+
24 0 obj
|
392 |
+
<< /Border [ 0
|
393 |
+
0
|
394 |
+
0 ]
|
395 |
+
/Contents ()
|
396 |
+
/Dest [ 35 0 R
|
397 |
+
/XYZ
|
398 |
+
62.69291
|
399 |
+
742.0687
|
400 |
+
0 ]
|
401 |
+
/Rect [ 527.0227
|
402 |
+
556.8187
|
403 |
+
532.5827
|
404 |
+
568.8187 ]
|
405 |
+
/Subtype /Link
|
406 |
+
/Type /Annot >>
|
407 |
+
endobj
|
408 |
+
% 'Annot.NUMBER19': class LinkAnnotation
|
409 |
+
25 0 obj
|
410 |
+
<< /Border [ 0
|
411 |
+
0
|
412 |
+
0 ]
|
413 |
+
/Contents ()
|
414 |
+
/Dest [ 37 0 R
|
415 |
+
/XYZ
|
416 |
+
62.69291
|
417 |
+
742.0687
|
418 |
+
0 ]
|
419 |
+
/Rect [ 62.69291
|
420 |
+
538.8187
|
421 |
+
208.2929
|
422 |
+
550.8187 ]
|
423 |
+
/Subtype /Link
|
424 |
+
/Type /Annot >>
|
425 |
+
endobj
|
426 |
+
% 'Annot.NUMBER20': class LinkAnnotation
|
427 |
+
26 0 obj
|
428 |
+
<< /Border [ 0
|
429 |
+
0
|
430 |
+
0 ]
|
431 |
+
/Contents ()
|
432 |
+
/Dest [ 37 0 R
|
433 |
+
/XYZ
|
434 |
+
62.69291
|
435 |
+
742.0687
|
436 |
+
0 ]
|
437 |
+
/Rect [ 527.0227
|
438 |
+
538.8187
|
439 |
+
532.5827
|
440 |
+
550.8187 ]
|
441 |
+
/Subtype /Link
|
442 |
+
/Type /Annot >>
|
443 |
+
endobj
|
444 |
+
% 'Page2': class PDFPage
|
445 |
+
27 0 obj
|
446 |
+
% Page dictionary
|
447 |
+
<< /Annots [ 7 0 R
|
448 |
+
8 0 R
|
449 |
+
9 0 R
|
450 |
+
10 0 R
|
451 |
+
11 0 R
|
452 |
+
12 0 R
|
453 |
+
13 0 R
|
454 |
+
14 0 R
|
455 |
+
15 0 R
|
456 |
+
16 0 R
|
457 |
+
17 0 R
|
458 |
+
18 0 R
|
459 |
+
19 0 R
|
460 |
+
20 0 R
|
461 |
+
21 0 R
|
462 |
+
22 0 R
|
463 |
+
23 0 R
|
464 |
+
24 0 R
|
465 |
+
25 0 R
|
466 |
+
26 0 R ]
|
467 |
+
/Contents 53 0 R
|
468 |
+
/MediaBox [ 0
|
469 |
+
0
|
470 |
+
595.2756
|
471 |
+
841.8898 ]
|
472 |
+
/Parent 51 0 R
|
473 |
+
/Resources << /Font 1 0 R
|
474 |
+
/ProcSet [ /PDF
|
475 |
+
/Text
|
476 |
+
/ImageB
|
477 |
+
/ImageC
|
478 |
+
/ImageI ]
|
479 |
+
/XObject << /FormXob.ccf2ce60accb2f71ebb323971f816d0f 5 0 R >> >>
|
480 |
+
/Rotate 0
|
481 |
+
/Trans << >>
|
482 |
+
/Type /Page >>
|
483 |
+
endobj
|
484 |
+
% 'Page3': class PDFPage
|
485 |
+
28 0 obj
|
486 |
+
% Page dictionary
|
487 |
+
<< /Contents 54 0 R
|
488 |
+
/MediaBox [ 0
|
489 |
+
0
|
490 |
+
595.2756
|
491 |
+
841.8898 ]
|
492 |
+
/Parent 51 0 R
|
493 |
+
/Resources << /Font 1 0 R
|
494 |
+
/ProcSet [ /PDF
|
495 |
+
/Text
|
496 |
+
/ImageB
|
497 |
+
/ImageC
|
498 |
+
/ImageI ]
|
499 |
+
/XObject << /FormXob.ccf2ce60accb2f71ebb323971f816d0f 5 0 R >> >>
|
500 |
+
/Rotate 0
|
501 |
+
/Trans << >>
|
502 |
+
/Type /Page >>
|
503 |
+
endobj
|
504 |
+
% 'Page4': class PDFPage
|
505 |
+
29 0 obj
|
506 |
+
% Page dictionary
|
507 |
+
<< /Contents 55 0 R
|
508 |
+
/MediaBox [ 0
|
509 |
+
0
|
510 |
+
595.2756
|
511 |
+
841.8898 ]
|
512 |
+
/Parent 51 0 R
|
513 |
+
/Resources << /Font 1 0 R
|
514 |
+
/ProcSet [ /PDF
|
515 |
+
/Text
|
516 |
+
/ImageB
|
517 |
+
/ImageC
|
518 |
+
/ImageI ]
|
519 |
+
/XObject << /FormXob.ccf2ce60accb2f71ebb323971f816d0f 5 0 R >> >>
|
520 |
+
/Rotate 0
|
521 |
+
/Trans << >>
|
522 |
+
/Type /Page >>
|
523 |
+
endobj
|
524 |
+
% 'Page5': class PDFPage
|
525 |
+
30 0 obj
|
526 |
+
% Page dictionary
|
527 |
+
<< /Contents 56 0 R
|
528 |
+
/MediaBox [ 0
|
529 |
+
0
|
530 |
+
595.2756
|
531 |
+
841.8898 ]
|
532 |
+
/Parent 51 0 R
|
533 |
+
/Resources << /Font 1 0 R
|
534 |
+
/ProcSet [ /PDF
|
535 |
+
/Text
|
536 |
+
/ImageB
|
537 |
+
/ImageC
|
538 |
+
/ImageI ]
|
539 |
+
/XObject << /FormXob.ccf2ce60accb2f71ebb323971f816d0f 5 0 R >> >>
|
540 |
+
/Rotate 0
|
541 |
+
/Trans << >>
|
542 |
+
/Type /Page >>
|
543 |
+
endobj
|
544 |
+
% 'Page6': class PDFPage
|
545 |
+
31 0 obj
|
546 |
+
% Page dictionary
|
547 |
+
<< /Contents 57 0 R
|
548 |
+
/MediaBox [ 0
|
549 |
+
0
|
550 |
+
595.2756
|
551 |
+
841.8898 ]
|
552 |
+
/Parent 51 0 R
|
553 |
+
/Resources << /Font 1 0 R
|
554 |
+
/ProcSet [ /PDF
|
555 |
+
/Text
|
556 |
+
/ImageB
|
557 |
+
/ImageC
|
558 |
+
/ImageI ]
|
559 |
+
/XObject << /FormXob.ccf2ce60accb2f71ebb323971f816d0f 5 0 R >> >>
|
560 |
+
/Rotate 0
|
561 |
+
/Trans << >>
|
562 |
+
/Type /Page >>
|
563 |
+
endobj
|
564 |
+
% 'Page7': class PDFPage
|
565 |
+
32 0 obj
|
566 |
+
% Page dictionary
|
567 |
+
<< /Contents 58 0 R
|
568 |
+
/MediaBox [ 0
|
569 |
+
0
|
570 |
+
595.2756
|
571 |
+
841.8898 ]
|
572 |
+
/Parent 51 0 R
|
573 |
+
/Resources << /Font 1 0 R
|
574 |
+
/ProcSet [ /PDF
|
575 |
+
/Text
|
576 |
+
/ImageB
|
577 |
+
/ImageC
|
578 |
+
/ImageI ]
|
579 |
+
/XObject << /FormXob.ccf2ce60accb2f71ebb323971f816d0f 5 0 R >> >>
|
580 |
+
/Rotate 0
|
581 |
+
/Trans << >>
|
582 |
+
/Type /Page >>
|
583 |
+
endobj
|
584 |
+
% 'FormXob.34f9dd745fb73a5a42bacb0d1cc9dc52': class PDFImageXObject
|
585 |
+
33 0 obj
|
586 |
+
<< /BitsPerComponent 8
|
587 |
+
/ColorSpace /DeviceRGB
|
588 |
+
/Filter [ /ASCII85Decode
|
589 |
+
/FlateDecode ]
|
590 |
+
/Height 254
|
591 |
+
/Length 20350
|
592 |
+
/Subtype /Image
|
593 |
+
/Type /XObject
|
594 |
+
/Width 688 >>
|
595 |
+
stream
|
596 |
+
Gb"0W$!7mEJg^&ZR@]i6mG=D%SaP<PG'[eIH>7eRB=<SqY%k)E92n^gnNNt[9'aj(!(#ZW6kiM7P>YB@&._UM(%FaU&OA]F&J5T87]sB[,4ZB!(Qh:POH1Ya9XOW1n+YA!"S#g2GS-A4T+QYI66^aW!:Y:Q,gnWP[9#",rQlgPo[#"#l(LZul)+@Sc-fWC/J`[3[RJndWRXPj+u'%18c4jLo=k@TCD$BEq6e0=gRal2,aGc.`K`MlQkijXO`l4kh1A'WSL_m1+m\5IFbu*$j=Reue?=%3DkbSFp=T]*SWWS&/:ENk[1PJZfD?E!ONIP'?<:2dOBT>`=tM]5<bh//l3]]*I''AT+LTY@$HCcSo!LVaA1"FL08pda+pkV[BsD43'Q6![G9a";PhDK/##6\]dtIIa<-IBQ4obQ_(n+-D5U,7iS[o:2!!%`l@if<JapI,0!!%PCM.?USQj6q?%fcS0$ruFPJEm:;!!#BPO9ZJJk5f/BO8<G7pBps$!:4@250tR='7Jqm8@p#U!!!#3;b.+S.jU*0GpDk[!!'f2-/L;:1s$F7nc/Xi^sHW)54D0ii6PB7f<ob.)34\jhg(kD7bqRF9tsS=,jU]nl#"=aTon09K0EuB.Foc.4oGgs=#JVn!<<,`_^jl#W1U&MDgJDKkic^K7ike0T)-B!2JkL%A;"\L=nB]!r4Dpk/b/lA!5P(4bQH*F7<?675^Z[<L[&GRIXAj#^c"E:_RQC6S,HQ"bqj"SCL*(;3qar<O'@CGpN"4fC:"^kfqb6ug#M8\[.P>?XXOc+G]CcRX!03GGb9C\+KR+H=/@N]&,]%%^?KiX_(B)@?+BB6nnp%)Xj#gLP.l@_\((,_^:IMB`*^4VY=MJeV>>.drl-da.rOrkLTB!a]=.5mop'#j'j8(8F*"WJqTjkLCO`$QO3u+(rR*k&;/cD+A`V0:LDI-$SU$lS$/(DTs"*iO^Jo(h`A]uYlnW]6oM&7S$ig:ceWC95;"jqc^rCk8@t1B0*RiTC4L!\!c1'[I]\,*)eJlW!J&`<>l"X;"UOK"tre.uMcR/Ql)>R'E7CfRH%kFaN/+nSrp>Grbg,s^cCWllkZ9I6n?$$aWo&uJ[H09=&aT&!K]L.n_Q*>YR,`Smd4@!'L7>uP`YYk,R;XWbP`I/o9q/bB*Oi#A*dqec+)q`t2;6Kl4h"(m/o7]NMKNVRR;D*eoLnCW(8otN3eA??h?`Gc4E(Br)ZNX8K:e(Gl3c.')+\l6Y]usuoXZW@sRQ=o1I3J[l^cP9#5+n,sb8!F[T-ruD*jD<k23iN5;ld(N?6Sq&?`<EV'NV:*(ZrukVmZ:!.'/VX=]d)eWO\4kWI/BJa,LlQPdgHVd`r)F;iPMeNY&=sr0FkjI:9\R4OA0J.UBk4\i-S0io3#j^n"n#TB!q3=#Xm:ZF$KA*icS#ZEu20]'9t,WIH0DW:TH@mX-:eOHD!#E/feCSd0EA$X9FqngQ/%.lF\.;lcP<%eb_^!!)IEnbRdc6$Zkm,)rZpP<2OPg@*>==6e:HRP_)1HP84prf8bNk25LULiFKn[8j-)e#Dd*6C7\(DliA3*n,2@.1bbXo71i;\&\Y7f<<P5rGQ,>"l_YFI]D)qkGHp;QGoKoGEo^c>MZgSEh3+XTDj1KP^'kcqTjhP[r7a>\FVt%_;b7k@id>tKYGW$>3]-:$Oc4L#Q$mj!.]9^0b:Y4Q,K0<"30L/SnLn!K<X(TAQm&omA5:J*\>MuVle4p5!Pnn5,3O'U(a^@.*mcXHY$j#j-.$T_qgn3<8I#2#:Rbs$d4aB#kPe.!kYje*pC.`kOjDtkCr$g9AF^NCgO)Vb0gtGeMcQ(*li6?s&iIejDjS3s!M,H338C-MB@`-#7>QsLNQm2:hK=hh=Ens5&o/Nn$87bQ'8S/7l6IqV1X4@!<BnsNFW$cb/&@r:+&'E`JB"NOHZHA?7O0a>K3m+,1q>D<EOK-:Y36`I"("gWRL"9.Df#;WjAV1rQPGm<423@hZ%&g6u^3('DlAd%ohj5[u9SP>b/TZ:&]G$h>]7tom[W9OLg5uLuHg98QgK%](&[KlJ*FTGljH`4B8?*ajW,e$8&@Z4aT8V482%ek6DL`2gpU^m.*m)<j'gchP?4b@%Tsi!:W`>jT1'uG_?#;;:!!1W6mg)>Zc'b(u[f0Ts$NNVo"M\J#0l$;#EfiC:"^QCsq2K$ePAEI54tVmsQ8GD)qD=Sj,jo5.IOT)8W6K<?HKOq"k+WFj,o3OoJ!q,a]72s-BjldOFTt0"Ql+O<4BSp%\aL0n@h3DVtI*Q>H@-p=pqPcNfINd]0@U:P70Os&-@`ORb8Qi,@k*5[?h3Aa3<p$`VY]qa:JcJ9RHL#@qa8&%iPo&+b):Rdtjra+sRFZ7d:,cQs'I`rH)>hD"#A0(k@d+$ogf]tBNC+?oE7-iORlTQ^eE!8n;Bk(-QeMAYpa^Z0?Or`o+Sn_a/!r+jjN0DOh<_<qp9!.Z;U%%smN%fcS0^n3=A!<<*"0]`>3MEi3_!!!k)KKPns*WQ0?(t+@g5b_4LO9Yac!/;td!Rtkp3=c)i!5QrLnpj]9-HKtTSd,5qJ>%^.!1&mCQ"ko`k1$L5!!"_&=QKPi!!!!-295k"!!(@j&+HY'!!!"R)H.^@I%HF4V#UJq0[pC&#WUlG!!%Nm9umF&f*=8a!!!!-29%a$;m?INXl3dj!!"_≪bDa9)DB!(0o84M],@!!$E*l&c4X]GpnO!/;D%*g!F*6HfN=!!!!9C4n^b>N>gE!WW3#L76CM^_,Y8:87pl!.^b4I"kJNPm=ZG!!!!9C6/Z#!!'g%#8A^ZOOnf\)?9a;L)TS"6<.).d&@$G!+;biOTu:U('"=7L)OPC:i\ZAj8hF@7e"`!L,"X:iY*(&;;#o;,st;o^1T"m;-(+iLgcSjHeq_di5^MCWi=0D_g$%/0-M&f[3o$09N^")hP)mf_U)ehr2Xp/d<t]Pp4r]%Ta/<*)tmlD9(fC>k%iML5:qnL\L_!k-K.k57,S"SoGFF6LT^Gn,f9b]4CJK,-a/'(4;oPi?Kn[[AtL+S+_QDYqQ%"b#EC0=Sk:oQ.^MVA9%@;?,^d"jHG,@@qn68W)NHLB-QrmNX$"22)7#Fd!/=XB<i%Wdl`NYokJ$&UC6Sos[?(k"P)<7SC$G#tLQs>h<FK3OEN=sreC:@R+#;rj7;KnsTuY=NrqAh8E.OP!?K$b*Q`aRV]p#h@"RRX=EI.H0SBM@"T/Q$3hra7Se^U37HgeB)d$:]52m-N14MGqEku)bP*T*JYBVY4nYk[E!r6Fr$736El+LB4G$&af3O0IZpSE%VQ00dgO#@=8'CS$3_[SsC$;../Jm6fpY)mke?#+&=2i84r<EIY#"_lUQN66j#YmDT3EfFZ+XO]Ug)OrX%fcdk3=?^I+j2V;4n#JHHlmCur)dIYBPHVeNn;IlF:itWP^Zr"ngIL&'rFjfj)`)X[2lP6ojiF483>0Ui_e&Vc=fUe>0@D301ZZP6$#85VC'>EIF-qPMcQ_(T7om12eX]&ruQ_*p$B%N&>\(Fhb7GY>q#*!n9d>e9b>-:mt>0>-/+="*QXbN`lbFg).:>HcH,:m+5Q(2.%l$=3n>%dWQ@q9$CR7^3:5V53#WMXlDpAAsJ8j?`?dAa+GL%g&$>$c;/G(lR`3O*hJ[PPn)3mo>.JKr\q0#iU/<IL3N8WF;rX38I"-S-l^\IT@<:nZ05G#1uh"EgF*JYi't])+UtEUsJ]<["#8dKZ,K@uo9:`5R\]\s-LdKqme>CA6D>W>h.dQi:bu$XW%C]Ml1s3BqaE$eHIl+q4eDGq:c=e=.OUj1^35fGbL4Lhp[Km$Ua37ia=Dh'\o8Y-HEl;[KMCYLncNA(0nSB]qOsdLL'=ERo9HI;HZ8C$.1XrHITq_sT"f*'Tk**Rp;B(#IHKNudkN0b:3B?M.q%!3^1K^7LibZ$./UP$m4_pVHgh+NF;6S/4Ucr^'@n:d7b5Z=:fHF*Gg!>i-RG0[#JVEMdph'<q.W_8EnL;<1,ISQX-YIOU@@8d\sRUJL&9/^@#HkfX+s.T2^1%jkh*??L\8V+p#,CK1T7b1##W9gde*A]Efs'=)4Sb3=L]RDmpEhIbqWE(]C2]>(b#Cg(GO5uSi//DeQZc4lId!I\1"j`.T.`EUd^*o9)efoP[VE358!NY5"NN4SaGcu[J&6fe3[-ors[n_M@p_F9BUPfGYJaCje$jS\0o.e?F%fUS?.5c3X'g4A;,KT"/con(Dt5fVfYK*dFIGWVgr;Q?DV+PT<;"Ebl9I*;[cm1o$KZ+Q+*;s&7LjFJA)XR:FrN-TsD?CP8#=)h`.0SbB'aK)JTR2A1IJ$PC/p,:=JSR"ZN6i:4]NGp+ViTBK-Yqp<I4ABlLZR"teK1?)X[ZEZXmWg(QSM2P*:I8@=I[uB@;':71k,mDhqcAp;Y"UKM:j2+q$h^mq[\knP*+A_]b>Z\pHMd0`LPFVbBIE_!WQiEfod"pM2g$4_%f/Qj)ad-V!<Z\S2On3-GFaXtbUeX"W/qcApb@5%1CfS#\`-;BML:%QeN_:&9KTa?3fJH."R[jAS)-$=#G,tq]8neQm!-(poN!Fk'(/%fQBeAK<Q<K4pg=Ecq1`0E!dqK&Y_q->3>[_Dh%h0`pKi?K?DXp[AnOPX$$D0^hqHmFD7`)4*a#r:r;F5F]1HS;LkGF@FhMZchJaWi]_D,b.S*i.0B^=K.<UkgSU%*>r-YG(@@7A3Y?=bOSnoet\O93Hf=f6:^KWj8/P6f8qi#H,<6X24Q]%;si[;)*JQ(*k,J+\t?gO\q9BM:qd%b0"Y</[^;DuA=(=J7tj\`HMSTr<F5F9fBb+qNKkV:0$^@t00bQDX`eEQVJWY<R/1Zc/dfBgWuno:$p``et%MXj-1]u>g3FgBTHF6#]VM)\j4G00jGBps+\cO,;7i(A]`O>EcXHGmsAlok_;hfl(]iQWI+>V)C?VT(t6gcf;_;\'4LA&rlKdk3Q9[djXF3D=Ak*W+3f]*dqY0<s@.TUph?ntrkUfR^^UQO!/?B;n3c-i)#69<Lt/aU;R*(pCnb`Wll3g&7K&f1WRnaLH6g\8^:NPE3l3S!"M6kL<)[60::+\D(Bc!36j+1gjPQUb$.4?U!a]V=X=U2r.6^Z6:R.9`//DF04,28XJ"?^#3b9fh)1-]#>_Wrjlt#G(Z[Br":'NL"@,pRg%XfXu*)'fp5gc"9*YdcW.*CoLVVC$d2C;M:NPC*XFi1+^@-Z-D^UCqZYg,Hs/,7p\jh'2q2e!_K`1_cRQ!a?;"(SgUKS[U_g8A:r1QiS?\];.A^MHqQgbL*utq0N9QlsQj1\[3827+WZ0>]-_@dD)Yt4D:%cR04ic$34Yl/NFkMb#]s9\9R?2m>$JP>lOZi;d?@FPI1"2m#+!AJhJFPHZ57i!)SA^Cc2VHhteg"eN"*U5gjucIYSHkH$b!0aV;\'qsp4DbAV\X1m>Am_G"6CN"\,VJ:B\6UEG/BS.[b:GKSqOCNGZ3?ZG0iG`bQGNC@@Zk*dCLmf[]."6`^]KL?,-13._W.I:b]e?*%[CrNB''&L$Vm8[[dZG>40Fp'.G=no5X;[]ck83V\2uOV[$:P7(B`@(k(?/`N'dbD\EcKd_jBF)OkSemK+c6DUI$>gNJ5*npp57R3>g8p"aZ%=\IWf?[7#Za].R9B'%o0)81i"0'Q@cqssgB,Wl7k[H>F+Op@?6K:$!:!1E))CTTd9&)J_EOWHmHUu]5hW9j01!8k#FgsUqga62'"1CL\IOXd:7NitDnr'AHuMbe+\D^@&J/3Z*qA_(UC*DC$%AJ<RI/9Q>$#F9g"kpX/N<^CH4IsJil*nd.jfTr"rKSN&-Aj:V6TTH[U)+VCmq/*ksjkfo[RdpHbBOb66h7V3$OLJsqC9`qF_Plfb$-hp#9i\doh!E1sQh#1#VQO&mArtIV9$0mD2,R0HDL6-gp9FG%jXK@H^&<0A6c8=AZkL0JeQ1^_HP4'8S!nZi=NSI>,DXQ-B^GPB%bP=i2i>_M&oTfAkU"oOKE)R'YsBrmdFMSL-S+3lIB-M\):rhU=#g"lnHoP_8c""NH)%[6=ds]p)6]6g>_j&sh_>/4&i.Y+qECW;TmVuPG[%\mQpd=\b;UNcX^lQ[Dbk,;?$elnU91nJ*t<D>"6?N3o5e]#IO,[bl_kP@b(e]")af9KC:oj#V.=^khOZjFCKlZkC_/5JpoTK>[QhG!4MV?N%`L'pAXJ1p[N4";]HYD=M_?E[%Q+1<e^@0Io>Tm<BEuhUPLnUB,<T,k'=)&uSi,BU+!(!ieC-<A>tD*S26bS:d<;.[2VtDtH%=`tHh.5E.9ta'g2OC;r%sY<k*0g\Ibg8Mh4#K^j.*aXaJ!IE$Q1Vte[mG8WAs1!C$\"i/`(]OVL-?n,K0>I?[-D`rDqm&6HW'.[(YZR&+oEFURf<XT>65:rDi':YP6$Aq]pQC2`5_7]&j9R:T<e>j1eIXQokB;&AIH-mN(i>Bj"6SMB?HKO;VoQ%BG9C!T%9FLB75TGl['<b3\1;nP@:E`]GShpZ6-IpVo-!0S"*P"7uihzM#Yd&j8f5\J0>AIzO9Yac!5Os,=H/VkUNmsa"U,&5"m&b-TMLo(njit0WFm68#<G[X:f'tbqHo<h)ut6a"U,&5APc!'gWMc\=''Me%la^_!"'&?$Hf"UHc!Rq9q+2*#9:UJ#<8iO5TW0V5s[eV=><SI3h<]<S&Ea+4Q$br"103^TV.sNTK'S,&%kmH0b:WKT:@_8o4*bsSI5k6WAB:T]-(s?V=U_[ls-G0ASP\b:0Y*A@mY:Bp=7LAG$2gd_e1!kIq`O[q$.Ml-LWA3FhN$RU+)%CRi#)p)VqjTH:a:WZ>4JB#5VosNRa5*mAeZ[?eV"f4PDeTT;>V(CHV=$dg'rW/%"FBa(KnmbpC=Z*SGn,J_Dq@G2oJI<cgQLjBS-]ha+OAXD;T82=KRnWO2s#-XD#q6mnmPSb6;I*18tLlSC,0[TY@$o.b)t]s`7Pn..^)%F.gSXn=a<A7qSVICmdg2L3-A`D^&J?(=D\$U.h<MT<Z^F?OraLTAV^;4_)UntboK'b>(])=I2u`6fd*I07qulp'la3S(AoHIS-nL_o-'\&t=B*p>LtRnC:n;HG6r^;`k=-^Y,QQbOR2<JJ`kTX8KLZP+.dIc09D-)oY^]_6X9!gaMfIqh%U3'$qdqMo%!h717oH!gV1rL/#Im^)=mm=ACbk%BM!TV4FBF8#k0a%tMDShoc>bjS'I3RZ:GN:*O0O"$P71hm@h_UPu"57^j:I=';([an*07nm*P9D2@eI;Jo()8"#E0,r@VN1%;]9[hjq]GEBK2=R&n2TlJ`FnhJjc/S3Gp_S3;kE#E5]+ajlIWaJLe%W0[a9)o$a9->q@ijR93o]PK"6@_jko$kFpZoA2VRsBgrPQl\@APkn@;<lbENWfl]"6,m5?>X)^9N%."6ON:e2H(Bq)c6e9q4&fA,M"*OVd<T*S/21*b]30Ne`*=_9L5A]_c?Xq[8+]/<i7^>E-l%mLp?fRPF*fn]PfLpZr+[m<If>rq!&!]=GJu$Jteb-&b)rmGu@LpNHF.EHQDFS$F0dceW*e@u]#&C)YD':O(d=a`UY:kprgHlLp`'PrTF?CQ@L^=Z1Gl`TMW\lJCY`?gl(g0l;lo4RgJJh:o^>`,js%<I;2Hg#e*5=F=^a*u]J9QE<m1cCaO"-S*i[8/OLN).!?9I4BEXEeQ$SleP(W?g9L[bfCBgN;YX]=45hhZ$k2+(0sAge1i+lA0bO5+9']0c0`/7Nu?r%ZhYcI1\OieB^PP?9W-+)2;RXe-R\(K?U`kScAM.`5&oRMG8KF^o@@8cIbE,h3SA%`Bh.(+o;#*D0n88s;oU9">plVOCt>u&9/G^[qUJa/Adl*EB0#kPW-^P+juab=BM/;N\7`!,691h9Y1#S0lup\gWD3'\5j3#CfC@m,h<(i_Cs\B>YWgWDbo3%Qa0q=1/\1OGKjl[s4HPeloV:i./3t=r0TlIj%GY0T#KHalk3ckc@@k7'rMMGLC(0LP>K^9kL0\[Bmp9kufmkg;<Y\^^!pf^e_e-iNGHU$TZW3K*ZC'\=I@5ImB]kuT?bZAI/S0qSnj(M_&Pc)15Ih$b-;ON55TtMA/+,l&*4LNIoNC>Xl=sk(EI!%;;OQ[D:/c)]%H4ckmd"bQDbKq]o)YWBeeRb([\Hj`/Ka9jPp:S-nZqh"jEN%ROp>[tf_ItXU9:YcMm*&ln8Va+o.QRh6`2S0X5b](9XgPt7P)WDefJ$L@bf*GH!AmrCjX)]](1Ao\$boLXPPm15C^8*?C7eJRN1nse^/>Zq.Q[_VEA6-,*&0[:*(AG,_gJjh2-(L3,=#GJ\FW4carO-einraS4H[,1YaqWbOSdoJ(_?Xp=1"e72nCfP!PeLDsNd6YdX^(In&FuVE";8DrMiHmub&Ue+6(':TcVJEDH5T>?aV4cgsP/Z?=STs7g9bWNOOA4Q`b,;8SK;]/"*#bL/JBZ'O\OJe<'!1fDUeX$"b&/`#PDm(9;jqp-\^omrI\UW41RF)tK)Tg@S`cBmsj4(Uiub@A]"2E+8L>O&,PMKVmkR#C)!!R"#A$j4QQ%Q9]"T]O[i_`p6Z_W#q:^?NPM(-^0*+/_oQMfmaolTHT6P\;q.CYdc)'U^T3OcLSc&'Gp!p08]DC9p93T(;9)@;bZ<eg?uuq+O)f1u%p#!GtDe]@2Nf*hHi/0](K.?:q'N.M'm-'CH-JhI<q]#5PCcCLW(g9egnbPf*oO?gVM6UYI394>dV+Y&),mnbN5s+"d&6>9C>b/O/F+cVqTJYqh5b[csjZa91^fQ]:2+S4>0Ae6$XXPku<&%Z=,$lYbHuY^51`rVWo?]uTHo8F4c\^Xj1&RkW*O#J(BYq9J24C-l,E4].Tdl$Ht<XQs3&Hf8k7mB:EO@,(ghPpEiooQQjm<a2hAejQgG?J=lHR%!VsE$`9Xrh\ZP&n<,PI-LRF`4jPhS%Z4Xo_UaHZqiT>EuHr$\PVh%N@d6Slg24J*ilJ8m$S)0-iIq<[7;9_]#AMGPGRQb).aj5X3hTmZ)iJ^fHT]b>K.)ofMXrAW$`=;\b*C=@#P6N0Ru:D@"XgO3n2hH,:74W21OVIDa`Xck^SNXIe0`6[Ir^nH[kX;<L[Gd9k.&OM559CPD>,)^.*C>a[R="rkX"n@'8_qB,fIX.+>V-?QYrE-;66p]'`#\kQXQJ^oT\!`]V&m=m@bjGGVmSG5-ina*DP\%>sRVgscWs*h_kpAKI4JqgPK_kIe6>a4(Vaph6$k4qt/^I,OqYa[XF[Cn?lFX2J/a>X/0NIbRP+*p@1R<fN_^3YAk`Te;nf<36[*T*MFk:".E1M\.(GC:r;)dml@mein)"B--7VU2Hl*nIH9rKfhWV,F`<dHcpo+kn9;,[]=G#gqH"=k3KHPps)LW\'*W<]agrf4^mG8Y(PTFNFU\1#P<mXX$&qtM+B\!Oo:s:;R"??fKRX'hVKItI38DOcP(0oTikYsh5G6Er,btSX[/EGmAF<`Q^I4XN"3Kh$^k%@i8ol,F,!C\HEQ__).i@95kiZA/DDo4S-Rb*9pN+AeRRoTD'$AKlIaNL[:gp&MRchR5@>?5O9ZbA0_7P6e#E/\S/31sCt5r&lQhN%06/,=0Vc%8Sd3u7\Y1WcQ]'IBFnOpM7ZRkfXm1AMT\k#[?b,>-c_X^^-OHT8I%=o3)7Ws&WNVXj4:5]\q#Rp3V9:7DUmCQ<*JPBnr11m0aB,iTh_1Y*Ahh\0\tLU4FT#muJSO/pVCXgaD/p'<Ktc7a6aY(f,>,I*fd>&&1dSWY5i"r\p$YAo8S`),WnX\Af%7<EX=)Zgf7?"V[r7(',A&YZ$Q!gSUYNqdn@j.^J@Z-"Z5jTCof>l4m1%=l_d12rWn-!T<bBCgl@%.Ro>bnD<-dH*j2/-+?]lSI[Ee/lM>$!2qB#<t67kjBm#phIM&p.BS2L9p6!MO#"_/p=*>^9PEjYO_2NDKa*ajo$h>ZVb9mCX:V'LDQX-9#ljiI-UBhrYo*dtZH'7KPf3A022XX$D0hfq/'XS]S!I)jFMPOh:o\[R6-Dc>KL3mH4TWpi+oorrU&:T/-A]9i?cNsj8>EQ%9$9"=jC%[#=goG%&ON->`EgghOATPX@8UR6,1Kf8LPQ9)J(:G(j'KjlZZT(&j;R!CrA.OQTmnT<q)KJ*qP+7n16IJ;g^4.cG^e>@K#Dop5.0&ss^]$1OCBRIbDHsT\LhJbGq=g#%*akS5X'CS*3`RSgWL\l2nh%(3:_Su=8IVQTMfjXc'_D_(NK?HH"*T]?-`HA3\?D0RMGs^5"Q4o7#2h^)"c<p5"\)/d)2eRU#g#qADnpRo5)S2EJd*p\$eSXT'`Nr'0'YYbgp/,1<e9f^B_`j,E)/cIth[^h%M-mFYG;D>OJCTHuS!8U3^'\?sRIU?#(HPk\?!d9e39O-kj(BssZu#;,j7@pe]5>m1ZFO\lq9scaP_K!dVRsFN\PN0AaaD]SG3&bi*q_#o#S4u#F)m^jXRk#rbD)duSc7PgebGJN[.\>Vdp7YdN;!^%2(+_b)ritnesq"Z6u:qK;1;Z*G2)3@)pJIO%(dKBhjkbL0s7iL%Mg"UrmB8'>W\8lHfpOO^Q$>i5$:E>XBk;\%n:fhO$$Rb)=rI9B9[[t'(=uT*5+71d/i3/;`App.83E9PC\%]c(dcLgKm(O-moae\KDEq<<bAm]TpH4F*MESlhlA=K3$^Z-O7($0Rb-Z/,%4*j)`nf5H]=W15I1KmN*nn)[2">W"e<D[gM[kcXLS3c+)BK5E#*@QSs+TU@4>Oj#eZ7:71n6VFqB*5KOl615I1K/fuX/?4.8/O=A6QD\_=6'GM5qPX-`D%-6L)gsfEi5TXkMj8fr/'GQct.JADqj8k$%*^E"W5s]e>$hAfM3&2#;TV.sNTY+GGo]bpBT#:+!!!!#3[?(Un!!!"EzO9Yac!!%9E!!!"\#64`(!-nPE!!&)czGlRgE!0@Ec!!!"EzO9Yac!5S,M5c\R93k)#Sq;frih\+uRq/Od%!<<+-.!'>KOQ9t8=tm$1Hj7'(q9-.iKPFS%<Tp6QL!K8+S3EsZV2%DTL@JGs[9hJb:$\7O6o%G49!PZ[I0INA*dbm;m,%Ec4`^k\5s!S8LdiB1Yd=boC12%5ba0Co6PXU7>!(B-#64`K8*0iSUA:MW84B&`DOZu)dl`*HkCbbiCL+$fMfiAkoGVGM3i@@mYa?"qfSO@Ghci$8a(flk:?I8":Kq-K<4l!#L/]5@gDjbb!<@YZN?e&1e#e0YbGXkL^Ym[:kI5oDfc*DB([RUTRNK6rp2ar^S^D4qD.Cj%hTWk08!:qe'!UQ(9J8$M<2YG4a_4JmehCHcnQEHnciXU/<D+^?\/6%Ma"Y6N[NrnKp:*;ZPEoi.XqG>dYJAZp(J?'#@3R3_)nWs_SCeX]fQO.%<LD0ICYI6#C'WhZC`!p(ZeU<B8gmMLmHmBXqkgLAg>KsFDCprj#!L_0)stoFDD,\Ne#MonHR5G*9A+87F^p5g:if3-Ecrb,1Za1\f[Q_<5VL,-3;R<^PjQ%G5c`>$#HF$=)*a5C[Oh5\.ne]\5)q8r!"9E/k(0Te51%:EW`MsTG514'>-Q$,pI&$J&pEkoDY8,9qRJWDIaVG+:#4K&%-&.R=&O*c-,V:hSDC1[Q](G='='R#]"[1P-8Ongb,@%Elf?2dah4r.3\CAO6"X@Edk))p8KK/]0YYr4o:?`\V/Q!;!d>A.fqqEC).lH\rppqkGpdcO:/$-[drJ('RW`h7g&Y\)@"RAjhTdRKPUc%e`[g\@PM_;kA%\RT2X7Yl=4]3$i8.oX]aEZ!=-=AaD=N#8EADWo\"r1M]R=Cu+60]d>,,fsB*,N506h_#4j'7&<bL!(SU!IlX('l8o$k#eA4T%1jgV1B$S8Ykffm+M!&.4hR0PLEs-mot\#M-+5'7T3!b&7H,BeMjL._qQ/b^C&+tN:`=&FF&9H]6,$gM9)V<>qLb=%l(;].Xf5k)T&^@T57ZEAQ*WqpdIEXpf1W\B7D%I]SfMMdQ!Qu6Ksl"['#-s;oQ);if>R(Xk"(H!Z7H?fg.9pHaTUNaM@#==K;M>a5.:@/8[.Xb5[8I]:!W6G)f+fL'b.-GrV_KY;\F^+-c$P?n[p5-DVkN0?2P)83:I,HI*\W=poQ`Ei5>Z+:s@`fa$=amZhpMj$_4MCdq0OPlg#>S(lGKp!;b0Y/+^6RhCY\iO#CgrJMF?K@6=b0aR0>Ej`R-@J"%gY,R:"PTJS(F,*1Fp(#_e,FR!`M_Qj@=(cfnf'ATQ%A)_h=Ya-*nu>[a[lO:9;DaX7'@f:QF2>6J,ncc9d6_.=KH)]1;=?giTsZpcZ*q`iZkh]gCUI-E0.&VWd-RilO+1>^iC7D2WeN?;WeW&pMBGDm?f6P0t^('eLtLq>>d=&9Q5#4fat@JH*WB80>iu_mRKjHY)gD!W^#dEF^+M1%jGWa;Kl3A(C*u(B\7emhZ[Vn5=+05XIeQpuM$f5GhFk>Ae?L-<&X7lpm*X'GC-rj2b:n^[66ASF--(Y;f4)lbEDXe!e]ha\.!905.m<:M.22prpdt2tht3=3!s5b3IGk"+8!aE_@A:*hQg&bq.Xj8'8t'CYI<%C'T]C?r^g@3:h0t`i7d=Kt[k8c.=k"#nb-(-:b*%D2Y8Rd+Kr7[Q)"lpi=g.\q=/]2blgq@[Inp<@XJ`5e(0/?,`$kc<%@F(Y3meIQMRS[IdcK%fcShL*Q<*XUU2g!lrE8?0.d?<Em1=mo`C6[sTi9iZ__jrmAS[O&@l5.e8kfa]D0>%6%M8&!Eo,:'nD2f3P@cD9j"ZH-M=3_IIII+WGUl=l\>uGsY*EKt%EY.WrP,KZl3Np`Nr6`Pg;XiWSPYFOT4H3fVJrAPIN_Vk\C-HQJh=:@1NcqpsI"rHLPi8p1qmreaaQHQMBf>KV]UI2bOEr"0t[9Za;FFhI*(^sf;cr-a./icpj[=MlA?T%5FQ!<<,?E+C#'H1pI?k9!9]\k/3HOTpi."HJcT`lOIUe-:mq4Q?N=hE:!(!WW3S"?H87,:ZA_55a(U.MfXp_Bp[t:J`X8+:WHH>j+isQ<ZI*kbA.Y!&-5irnf5D.XQ8G`Ve635>IaD4/;/0:jN$25p$F6!.Z4#s$%_.!!#8*zj8f5\!'hS*!!!#[!<<*"5TTn*!!)'\!!!!a*WQ0?!9=.\!!#8*zj8f5\!'hS*!!!#[!<<*"5TTn*!!)'\!!!"<Hlc\Go)!WLVsI!6NS-^](Z`V&*sVcGJ>(3'H(_gOpd"DQ]6Ukb8nEc[>$IG:Z`bH4['-pL]T;>ol/<2.@D(/uXk18.:?n:O6o%G48hiD(D>)NOJ`#JA5uX8eJmlOE.X8"JTuWbpZmpJ!!A[Ud(TOlqh0B!N+iTRhJ7B=.7h/-p><8iX=\1@DQ-JTanmTCE7P%sqWjt(@c[h[YqsO9Aaocs88P\E%Rnm7ed0P!t!+8V_1(W0MQMKV3,O7$k/D8XY4>/AP[CWe$k6Gp;iVFcjA@`'!o2qk+QYWVM_T7\B-Y7(\0>mQ9h0A.7K^GeYfB&j3%JCR7@dbU?qet)#HE3d(<EtIjpL>&tAQt>X6]JFY:0O6W\4W.3]`M7_>V)0(4"%,6\<uAA9Me',6;(J%St8li.(>sk]tEQFlj>s3?S#Ngm7_N#Y*XhH>5p[2<M-\8Mt,V,+QX#X[P^"tS+5<@d%\!ZQY#f+.3!0$D@H%IC+b?8cE?5MVE>D(S!k$/kf%cM7is=IZ<c&eBN7+b5aAW9is0UPQ6kF(AZ7c>a.W_<JGsLu*]Uf^Df9'7'WIlcmDsk8l>#V0Y$r6_pq)]Xdjl;JiTBK-XghW+'UXuqH.DR&QSsu*AQ;3Zq5Yh94FPD1(#.'j/UMMdG;,FiN`C)k.]TdR1(>gm:<S,lO;SkU#da,dQ:FLIN,S@Q]Vi_oko5&=^g0B$dtG[C`Eg-I;c"oCd+5J"k8\&kVEA7mEOP,[C5,lSSH&LUA_r7aRhO6maL'HNSC1Hq3;L6i5K5e]Atr+*GBGLT"R[jBdAqBHA]Y>&[WoOW318kEDb89%Gl,]s5K7?R[78WpcNJ&I?h!Q&H5+J4X#"P%c9.bq<AAB,H"u%C1*e$TnlsV\"Vt:FC`ds'!9b4hk(*U`]56O/;TK3Ye5__T,.#5I`.C$QC[!i7^G6DalVrVa4:lnEK^ZQ7]r]tJBi\760K1fTi6LO?04E!R<E#q\XZAu7lCe*P$A5iB>aV'('IF&=h9*mheLKU4'md5\gkrat[Z2@k=4L6XBZ^E8)cnMIP(hSWnI:J8fmD_!;3OmRAk^@a^A=^UP"IK-<+^QD&6-MAPk2Rfl+Y?jD5eI,7$'Ra-gm"dQh/5(-4Xt`JYuc94t\p'Xu>BmP%n/8;t^dGnrr/n#.^p)%fcV.i6^clWQDU?!*OkV;(o\N\<uMXJe&-2gJ&KD`B2S<qD0Y64fHBBmdFDt0MAkqaLH6g\1mk.Qa,$i`jmNPV,U2>C?s28Lj@q+DL[BI5?geC:l]ClPHp^PlNXigX/PqFD&k]aDO`t=CseIPqJ)O#<o:TVSfG4ZL!Y"Yc9_\)>M)I'81(<!9r@.9]Agpjf3EcumVRm<GF@.cQ+/pTH],l!Od&$YWG#^#bNB,S8#L\TkZPlh#Q-M-7/AUo)m2'lg+/YJ*WQ3:a,tZ*pn@XE_>qcZc_!t-<Ff<ODXo.Gf"p]CNueuJpG:jNpI2jaGGUhS8O6L!LjT453ERio)KU'+$J,MTeF\#S=`Kf[o\Y,fBhdiojJCkdqkBtbnRT?AMU-ZTHt.)NE/hLuAXXT?A_)a&,:BCk@o(Eraqd]s^h2WLlI0MNI)Aj&9,m.;T3pd+/DP898mTNlm$g8lHu5XF&5dgaEhp9QGGk<j;n'a9Q,f5TG1I\Xb.hpOH4e&r8?YqEbQG`\!p_>5luBb.XhV*kMt,PagT%+E$@)UO?iW2B%i"*f[Pg);Q3YRU8tH_\TN'u&c]dg[?5mdjR%G-meXR9?9<Ys*a4d$t1_&&\Kp.A5.j-r$km-c"1FfGnV9^AIH-M=3_GbA:+WGUl=lX@HSkr=*+YH*o<ZSCo+gXjWI^lP%Eo[\:FmSA'Nj_Be*KBCH`>91h#E&,_n'Xpco7_rFW=*S9XgA!'nU;aKlmhB"Po[KlbI3WE\be:>#g[C7/W!*AWap7bm6&25W`]1IJ\9ueR#p8J8bBAr+V+PQ$m8(&!GQ?0jc$Nl^"tdY.-0q,B28#fEmP$o!!$C4Eq$h6<:R'bg>r^.rr`@Z#B_n(A79WBZU#ZB!!%PCamoC;YtWl!n'8$S=#2M$4(VAroK]OC%f0!%!!!F1q#;34!!!#iz+:eGP!!)Qi!!!!A%fcS0!:g*i!!",Pznc/Xi!$DdP!!!#iz+:eGP!!)Qi!!!!A%fcS0!:g*i!!",P!!!"L,P(o9Q=%4J2J#ZnCs8atP2`s5?]c'-I6[c4!/;Udk(/Jtl+,L!<D$g-X^&Jc1&k94[A*(Xg6YPtb*;Z6"oC!r_diXTFh`94Y,EgP0lGFjVejtC=)QJqq!u?P('?:#Z;8?>(V3]%I=pf^ihDOX/K@nAc2?_a)(ElQDtS5GbE7]u>5Yi/\CU9C5+Zni]^U[_UB5?O)q<GENgMU"K+D7?Y"8kF(]aWPOsBQ`;VX0F&hk)d8pP+M?>;nP%h,(m>-74t>d(<6Y%h?erU,NQU3.N%jYe,Ka90>p^=Xq7W,6soJ)84U,9QV,^i\sRlhPHgbWXQ/bkO519m'aBL23fiXu#IZ`G]+7:*DO:2Utj[Ri7OK#TP^i"M$f?6N@,M_3'"Ncd!Ohnc1+L"_u$5nppO_/pT0[K)]k`H!ejglK1!Ce+GaB<uaHDASH$4q4cSjiOb.7qCY.&f336Ia3H\ITs3_VJ@=^f:7oY2/oK\scO]PcG@0r<e[6=K3dEl;b)S6C[WOaHH=tP=AUD+f:DV-lZ,<*%gc%H^crsK-O)XhqkW@Vrj)H5$>#"U/O$$7Oru7:XP:LqL](nWad*/aIA'%2QLE.gYea)IJ1[UsMl:d;[qbBnh1RDFHXh)*3RHEbukr-P,m$DK@eS$gG^HGYg[G>Vuk<r+,E?91&T;q%l(<1d3GemGh^7R?"G!PWs(=K9qD_GF&hK*mOO*<>H+$)DB:Ro%3GL/S`,6.]P(e<_>ICg/0k5hji[A*?mJmm-;>L)'c`Rs'D:O4KLkh3t^$U1,qX--OHh*0M?boO4+j[P?TVo)".heY.uE`]cq:9@FKEPI$fkCek<?Zi,@D:$dDXWHZdC+BfsD4P"HkH='F`I#=BrI!o5)+SP3bci_g:JEC+Bj$/cN^/[&"\qg1/$IH;opdj#`5Ql``B'h]0<[Fu2eHlNSt)SKbp)b$?3*k=`dIIPp4mZ$3S=1lhi*qgoUIl?<aBq1F(_]J/NR4AGaPdQjbZU+Z.Y[DA9pBd]=l3o_V.M[DS9&sG/k`OnfL#YjLP@57K<F5D2ugB#?#`uc3%S\C.3KP&!.T]i\bfN6);Q>kU0nL;=rqkRu:KhYFNHTa+!Fo<R>b>@`%Km.c-c[#@n@rN;)-*O;0^m'lTXZoD4!ff'1_spKq'emPi^6=lp+"Yr-8;E3jkXTuZhWb)7e+LWrFDDg;mShL43Cit`*H>:Wt72\sR#,@cuD%!kZSF$&F'meG$=6!oTK^f0SkkAT%:?/LSXju1gE1B)7DdjD1Vnt%WN.l_NQMO[Mp.1'QXbMH-@Vp@Kp9#Co7!!C$!H/NXVZL'b><hNL#.h?k31S&6Rn[850`^quHc:(J)p1W!?D:>@PT3O0dG4IGK?-a0VmmW2+&H0C$'0Y/0`P\&J_T,I->V'b`Gq7Od4H]<l3k`*nkLo"`&Y>a5*%3WA8HlM5@>:=hRQ&L&jT.^HB_2"-o.S]tjT.;=*j?P#X$"0iZ<)@2r&d+#d(*q;O"pcB-H90M!T=TgWZGG/S/C?DBpeLTb7,qa#A,6G)tSSB.ra"&6t7:*CnB`;]46s.#&4tU!+91o1(P?h[,6$J+=g8=^1&/1b9!hZ)"$QCCNlaI<=h$:`0cZCpK"4$G3&a"H6^AYIFX<(et?lm[D>5?;QU_KU3_:brL!l@^t2go5/t^N[u$&M]sHmlidU61k8Bc\S'?-XW%Ib7#BYk"XL4WA9o1Nc95asF\;#n8$PYI2r'ufNRNpqja90l7"X?2q?8$T:EVpo,/kU5u5uW8]V2Ngtkb>6;b0,u\:C,6ZeFEf\6\`q.kt*2lLJ_PGQkWKGU=1Wm:3_hf(en2?ln*@(b^!THL(OCc#)jeu^r^)AD!(i)!js6>mgY&%J$Dl,7ipU=pEIU:NW7rlq$u8M]4?TDPf*pCF.L%;-Z%"f@jX0rF<*SWrh@_.HA^Tm2:WM<k)=A)Fr<4`BLBk:)8/aT]i6rYOllJuc^^N^s4#SAba:,[$'.O>%4n@;?Lr^/UD0kP_N-l]l@_[rmd1INiAtT+=;SI"92cq>kk+M]FmUDTG1b"6rF*$A0-:Ij3ne`9N7i9e$f;^SH'HY*<mLWtpq1B(]KBJ)a*Y>.:%M#fgWGZpgdZbT20YeL31'0AQ_,[glLit[9,f:#*Z18Q"9<t'j2a?%3pim54?upaoE"3p.39dRfp='0?]+OIZFulk=XZC/kG[Za43P23/NsLA!+7HMk(2mbQR/ac]nM$KR]>+&f*?^hb]GEsnNN/WNck)di%\fZ\r7Q(,HJT@*0gd.`.np)i9fLE4<ThGhmf,#n_>RnqZXIZ9'MuZ#QOk?&;:(U&HDe2+:eGP!._uX5WoG]$47+Ib3P<WJNNo4!!$phj8f5\!'hS*!!!#[!<<*"5TTn*!!)'\!!!!a*WQ0?!9=.\!!#8*zj8f5\!'hS*!!!#[!<<*"5TTn*!!)'\!!!!QjoLH:O$!CB!&.rOo)O>(!!!!Q1a*A0!!!#iz+:eGP!!)Qi!!!!A%fcS0!:g*i!!",Pznc/Xi!$DdP!!!#iz+:eGP!!)Qi!!!!A%fcUFd)&EJG8;\%51HVIk(WYpE9Tmm\^fbZV-bn:WoXGfLg0d1Xi(-8*pG6K3ha1aV0##':=lg<II8ZNpP8F-b9`RVV3+q=Df.j\V7pTERo;nJqQ;-h]\brqY;[!CYTOGV!5MDTf,^A+TC\Xrg)oEl%dPsKj[($Xo[9\V+8KZ#m;F8.%dRHfQ]IcY9/tDUXfg'bBX)H=Op>a1b,,CNH(`:/!i6\'!!!#7+Hg<8]uMW=b[@&7bmV/F!V59ADknG<Pk4p_oqT9ccLp0L9^0,PTW->WGtQoMPC!4`4>'"!(%]5:cP1I#<T<r6V1-fq8MTE.ldh-r]@=koq44Jg9hVT8EO+*c2c>^ob#[oWWB9\O?d>bq.<Tu53nmRfl$ita5[2i]c.k>-\Pm)-^Q=2Ad9BnI(b!H-!!"^[Yg9^G2>XnRg1HUq@CJ@l.cqr3P6@K,]h"GbR&<fKk&+*=\2d>GH_jc_)ALl)\YIZNEfpYQcCS:;beQDQ5Q@S>AolSsJOX,WS3D:ke2L7Fnciq?+9$2arD1?iO6J8kQ%$>6VreBs#8LbJ<dq`=Z6j;CAN&GEd'K`21*@cN*mj3F"S)Nm!";S-cO]s4VlcThK65Krre7@n2Rgm4]D*uX+kp#LX`!PXl*i*&/U?0H$%5TuY/Vq%8@7]3h)agal/[==AFBI??(S#/g>(#Xr/L&VRFk8m-MTb"od\+Q6Mnl6qem&:!!!!aO8B)-e3"<@45"L]*anZKO*(f\iq\-@c*I*)B.8*k'DWS]_?899!n%FH9W9u6J]"<nCS^B:804G*C&NFr)h:$N!!$DN*n[[>qEk$IPZGU<'Y14]^K!IZ;"?kgS88h5;0LbKcs<+iS[ac"<ZB[8me^A6;EO=`>b*>BC84hO)4F;La8__.H4sjaj8f5\!/Id?%g^Jpo!.W"o7RdJ'T&/NcP-#n"01+Ufmhm?2*bA_C-d(]+P&n@rh$$)^QsTBl?]$u;oQe9Q''X0\gce>ZhQYVeXFP]!!!#W&BFqR!!%O3za9)DB!$LD)*dI_c!+73B*WQ0?!9=.\!!#8*z@ij"]%EJVO!!#BP3=c\B!rr<$6PK"j!!!!A%fcS0!:g*i!!",Pznc/Xi!$DdP!5L[uEorF;N]/nUa9)DBn4k47UbZs]5TTn*!9am_^jnZk!!%On)Y1[o5TTn*J9Mq&^jm!e^e9[DJ33f3!:M2oJH93)!sJ/p!!'ZQCup5Xi3n[6V.HWPXW<Vo\mKJ\-Ob2hWqnSa^KN5M!<<+Mf@G-eBSk90B8lUqs%aA@a5jl*]9aNYm8(aoDe=L,>0$dG!!'4)ml^+;$['ZXW!'k3#o<hqX?*l>cn#na(MHGN3M+)&K0;<M4$)(f1YZ5Z[$QL2A=_<c)ST3gG1Ji-D\mn<Q_)gss1-KseDIQuNjWSTAaRa_29Gkm\aJ@_;KJs/r*u/VAVp+IB9dTSda$.GUk`f@8Hu_[oVT<F.i7dna9)DB!<(H?qZSWpH[_\_=A$<HG=YUhVrh[\5:/&<E^!<VH(]d_f;*o4n+r[A,?ohY2'LcC?`GaoG'#S*dse4O2,j89W]k(..dG>ZLCU_9n1V+\Ykr'JlSKX[!A=5H(:F-=[F:C&16FZ3nYNIpkIO$qTN'TTao`ZaA:E^FfLn/Wc<PW*GlRgETYL?K"#!^HA83G$O&g2q:[78B*?A&VrgsKIX<4<<F`]#iZhq],"8O$B?2=LVeU]mC`<!^?7Ag'M%i>*VA`QY?8!<;d-'W(ercQQa"WMogW?L0q-&0m`lEuM:#MSVV(Y2B@&?Zc/r>p4a!!&\,qT]1SDAG2's,**IU.opklMm_E$1MHTc:OIph1du\Y(>^@(]?/`Z(/2%:&HMQjI`K]rJPF.TD,Fpp7M->erC7-b:?=s,<r#+1#=S)FV8$$LER0.!!'[#Icc2'.?i<g$X6Odl*E8A*X\7tZ^m'L$ed65X(e+Vo7Y<b:!rm4hm(jYg's>Ddsk1AN7Ko",V/DSs$CibNND#DZC'DH[@SWNFuR%\ZIU,-r%d4L5k@aqR<e_pH2OB9UHV/JJij#5!&+u\SHgA=>((4>TiHKs:KM/<3C.5*T$Wu4f)D*kW=ba"X79&*q4jgsYhf(>Te]i=p+PFsKR_<S4kZ\ET+r%]%fEqV[H_8pZL0XV)L^0%BN:-!!!!!'!rb?W!J*?5!!)IEjFI>?bQETd09HJ>!8q.94>7o%H%8.$!!%On%e@Dc5TTn*J9Mq&^jnZk!!%On)Y1[o5TTn*J9Mp"-&7L>2iPf[!!!"L49,?]!6>6B!!%O3za9)DB!.[03!!!#?!rr<$+QS)3h936n"S)Nm!5Qs749,?]!6>6B!!%O3za9)DB!.[03!!!#?!rr<$J33f3!!#1Qz$r,kH;"hOsL4Y#/JqAS0oEr\?m;711!>H4^'GQe*>`<sdrr^qP+kc~>endstream
|
597 |
+
endobj
|
598 |
+
% 'FormXob.6f6d53f435e6637bb138a00bbd123f42': class PDFImageXObject
|
599 |
+
34 0 obj
|
600 |
+
<< /BitsPerComponent 8
|
601 |
+
/ColorSpace /DeviceRGB
|
602 |
+
/Filter [ /ASCII85Decode
|
603 |
+
/FlateDecode ]
|
604 |
+
/Height 169
|
605 |
+
/Length 7701
|
606 |
+
/Subtype /Image
|
607 |
+
/Type /XObject
|
608 |
+
/Width 685 >>
|
609 |
+
stream
|
610 |
+
Gb"0W#BU[SJ]Daln_%pKHP^&KjDo5[a!QHRC^9^q@AfYh0Kpl#(Yc3c3+]q#gN6AQ6kR:l-A2q9F:b/`d4Lb9&>BJaH5B<([ct+"F>L8(^&j-6"O))IkNVBZrn@q[hZ#P7q+L'V[qH!H!3dtZ/-Q"RG!cZ<!5Q%!!<<,P(,5dh!8G)4%.MQQX]=*RirB(0QFh/G#]2;*!!!!X'k..C!4G<)\?Qe4-2TNmh1l"2\2@Pd$lJ_p>-(`IZ-pQ@_uMCfKr3CS/_bl$GC"jS'UUtWnaWptk4(H1oX:>#>LZNYqSdB+$-!4\=4k#XCX_fuG0;BX'P7j)4P0*K!!)A]oeGAWEVk<%j3`GqTGN@*CO8VBQDGV(@X!Y*;hB5FmP1ADKs^bZig*T2S(uh(UhRiHGZ[QF;mMIlm<G-/`N\+01TVG?P-G#fcq:F#!APfO>S&Lp(L%RUC:SO<oC"HXXIcP@N?akVmaoC503N&upPT??R_'mN7/)pIG7oi^P96-OUmcGla+2U#k$&5UR^8\H7>WbqI8VLIn^eN8qFO=$1(-e@/>_d@\h;E,p(sXaBuCN*/js%>+5YA)8nk!efro4>`k&+`bo>M*gp,",Gd$"%cisRi_!bUo<0gi+,;&_B=Wm@oKdD/te+mUR73<C;KZ.kce,ITRklpnH]B1$Qg3urdJ!j)E]r%TbQKESDHlhmVEk9%)B9O"g9U9>Bp@Y5E5H-pa$JKF)-NO3ti*$p!-?deZoh.f(0;lEc&Hd\2C:lRmH05Z=h'M3Gr"%"s.f'U"f+<4f0h:+QT#_>Y!+W`LdpLu&P$&p%L[&bG$o$g3EViH&^jB[]M;;05WI?0l*,cgH8D5ge?MUf_:*Tu(lY0Y<TskEqa!k^9V7Cesa8JQScYFF$)E1cD9MP>\BS;/F:3'7B>.?t\1s4SuY'OGYe_)K0of^i.if=-&Z:XuOjMWGuqla&8O%?mXQ,HGKoD?M&REFY^bp9OI]"i616IJf^rI;-LI83Cpek57fX`?l"I[`D*mJS%-!8Oe^'*IZfp?,C*X-M?YPuHOSAXP[ZhcgWo1=[D9c$-)a=Y2;,3EW5N8_2$?oqF=d]'gL)MCF;^Ze2Y!WlLLdpFES02LhTo.rIcaQoWf(5POTPl9;A@/(@Li18ij.gW`JVa`:?T$on$h3M`V2audMklt"@VNN-\$B\["#mS9"*.6.6JeQ&]KrS24"K7AYAVRl2Eo9RGU@t>INF-'PVGUq*t!K4$6(Ci.VMA^%Z5+E*?]83$/lj9Y@;kS#Ec1fuJR+qL""ou/A[3>g6n"`ra2g>VWU^<BK!JT7DQd(A*6<C]CYO8oIVioEG)eNCQ8)/"-HM^VCZWQQnEu#P>'XR*qQ*Woq@R."0"8jr\]bh;"fs#@cQM^ikn^O=7^SfRM?OGR&E$[#MIj3C&I-O@F;/VI4d($odH82'XgM&8nLhXo3`f'MB?-LC[H*ZRn!WGBBJJ]N2=`(l()/?mnE5).\IWn(R8FRJCCqn5T\\5af!.Z"hCK:Q*&Jr,)YBX&Rd6fE^X*m(ZAY"LYbJ\p?/^%Qs[2l'ePP'qPC:et1?)0.*>fHsE'+ItEr*';X_nfiuktgS=SVbeEL,#?@h3ulE9q0AemVVN:s(XfMIP+dJ=K.ic;:?cOe_d_$h'Zl1@mJMZeAZqN4mfd&=62r4#?Crd(,^mKnaU`V@*sR\0qapJ@`3e:[s=nGD\rSFn$fh^\+b(T!-#ieWkTKlO*&#<HNQCbX_HCsf'XIOAH@^ZS=h3s([8eLo@2Q/BstQ*:>D&]U);gI1N1NnITP5X>$g#.Y^N\-(gtjaDO(6VR.,<6_)H-&#%VL@5;i`Xf1/Sq<8u.>+F^RWaD/NP@R-o!YumH2*<3%Kni_8p[C.dfDfpC/Q7QoB$qLkO6<l%B1]4JeiFB9ohA3riqBZ=G!*Z?2s*ToX`b\i&R&;Fnj[J&^T20`3qQ.<>YC>"WXX,\ebh!?;+bUeQh']?GXXq-V$8K?o9nC#fj;m+(Y6ZW_al`+g8m.kU3N-ik[FNQ>h?i'S2ao\)h>ESW!3npBM6>U<^U1b%`nL.Dl53>9r.G>'eO40Xi2!Mrp4R`>Tp^@d!<@XN]#F],i7[3aat,FEJG&K3&o3Ht$$OPo!8r'Za+,p\2h'rmde6O1ir>C4cV];s)u'F6Ye=9>58qht%_O#]]A!ZBG6r?J<f43;HUn,:gaFcs!rr>:/W:MH!.\nu!rr>*/Re\[!4G<)!!'gCr%S0O!8(>;:B:FqG2nVaZ<.,-!:6R0##kX(!4sBY!!$D2rYV;!PlLg"DJEX2'*&$b%5@h_!8@k!!8.YY!:7]I"'!qW!!)A?(]XPdD$=C!iW]A_G2nVaRc4MO!-V9S"$?P`^hs3.5kP*W!5%dA!+#7!!!'V;_uNL3!!%10$ig:C[eqkqVhkBR^hs3.5SjG$JDL!15a<r&!!'V;_uQD4!!)A_-3hNk!5NJe@XnL[!:5FW!!%Od&H`"5YUs;a!!'Gr$ig:C[YOqa!8&&A!!!#R+pJ#I?sCPL!!$hn(]XPdD%QjM!3iTk&Hh+B["OiW#DG-r8QL-.6A`L:(P45`o0g%Wq\Z08,ga.RnNmW\P=u->0Q$XkP*jdcEj+"$D`=Fmti#!#P9Jhg?:<r*:*VakHM9t\j&G>;NGD&!s+"kd!g3Y(FJ6Q6I`rPMN^8V#@8'g-MQ[P0eY[kmHk!U21d&"3s$kSFgoc"I5/d,M3`W4&P`As)Z-(S3pa?^47!8(FY`rIE8`DD>bc]!9Ih)_9pmU%!DG/o^P2%TjRS.R\-FC7m7cTr-nO#s0fh3kltp)*BV^$!1,U:4Z5qM\Uhp[l20nA4756I1_0(@3N4p"C6ZkUkLN\[TI2CdD6Y<3L(5p>V/09\JUW"%W8D?sqV@,C6FC'\'uW_i8UjDI?0IOIXAC7?8>5dp00q3?o]L>RaXM5&]E0iC4%q6c,01W=1[OmEDa&SrO=Fh-VTMm@6ffB/C3AeEO"Q9T[9miu]<W3?lE3@<AM>F6.7q)VNa$kWNb)JltJ>0d,-%BO"EL2ZHYT!#o\5(a)oH1?M!Fpg%N\:#>Q`!69VhRo5:g8dObEE."t!fQD#U!(ZL6odQdo;A-in3sN]rn1%&HC85=S.1%FnpM]i6Y9RT;k@Z+@CcEUkI\ni`%ureL/iIBMa\N`c1@Fb_H>RlWS3A-7KlNeLAog8[k0XZ/f]osYrYV;oIMQNhdNdpmh7%UKi\AG\7O@,Ar<im`kGK#Zj_^J$@TEmu6J6E*Wh6'L`8i_c>-`RX\_rQ$f))8Z)Y[@oGC178AcJ@O!gf,lB>!RE&UtodF_fJlo::R_bCcCGL)$2L=9&>)W/Y;;<1Y(A9NgD7q6A&RrYR>&aXPnh516s6?[_L`JcUl9O&>5$gntgF.Jq"O=ls"=TAim.Z[-";ZlUICju0fWTV'sS)D\VtC;2t;N*LRGUH/@p-Q(k^Zf1DbO]Dm0QYnXO$s8VM2@I]2bD`<RY/n^BWsi1#WRQlMfW#V$7OV5mVj86$`bmC\g0cc;nbN<pDD4E(`j8I/iubifgD[V!p=UkS1G6+"U]5.X\F@T0@"%i8GYLU,!3TXth\=.g)e<47c:eNqc:cgsTgQghD^gefljZe72AidYcrDHRcg>YpeJlct>F*E)SW[7>'<N+uJ%de"C6_pL1\8a83=l;hLI[,S3-n<sr+u>^!83Vm\bG$l>e+_tJJbU7-YLs@s-u,t9kM4r5R]&V3`?Pnl&Pis(nkE`ou?mH@V-L;L[@3.s7V*WZuLR((nFcFm;;?B`dnN(XNt!\7MR-P*"1>!c/"K@ju,X.!74&L^-tjMr?AP._pN8\XQ>oa',F:tju(2@`Q,W;ckqjMIX"mX@g8I22*KuXq8R7Fd=P'.]I>POi<U=92#4p'CEneh5#*L7>SN7U<$[_TNpGrn4*,=o<njhDG]^\$0h93/,H6M#"eL[`k*in:k@QbJ"#3&;$PSI"oGf`<>KYfnEFV3e>$dgK'K(jN_+/1GYEpV*oJ5/1M;7E5GeZFUj'HO!A%%]uB6,A;\^=LYl!$mtBC/nW`4@C:i`sj:dBFep!*APKr5,+&/501]3Qf+L4^ce32(@^iMtCC3+@jg01D?NQ>D3<@M;F]g$u?O2]-r&G0E2g(KujL]?N2qfgj,sFh1,$W<<d?*9;gbRonbe5?N7`bD%'7sWAAjigD5iqK\@8N>dL%q><QJ<IrcE5hiT]-%Th.t&T#Ppbs>C+7N+(1^H'?):%$U<BtWtPY.KV,QtL<&$lM/^G2CkXr[i^fqB?+D!3R(9I*f8DMe>eU8?ip[L+LZ7g3l'`!43"di*)5f,u+0MiTN.Do"'cP[dF4tDAL.j!!$hn(]XPdD%QjM!3e%a!!!#-719.r^p]%"!!(Xe0`V1RgEHh%!+9$L!!!"8M\lEoJ8Gl#!!'5T@K6B.[aiq`TSs*d*^"]:i:4!6DVc31!!$n=_uKc;Cl9,1!.\nu!rr>*/Re\[!4G<)!!'gCL]IJUfG61A!!(at"onX2>JpLA!,RQ1!!%Od&H`"5YUs;a!!'Gr$ig:C[YOqa!8&&A!!!#R+pJ#I?sCPL!!$hn(]XPdD%QjM!3e%a!!!#-719.r^p]%"!!(Xe0`V1RgEHh%!+9$L!!!"8M\lEoJ8Gl#!!'5T@K6DD(*ogHi!5kL7t#uep7O'[V";^3<Wmfpq3MWQ,'T<"6LOUHMPn5L%Xm3eF,dp6cd';Gl$D@oI='jjrc>WRrpe.5_N7Sg<,,Y,lmQXSC\R-aS%cHYkEWal\s(FKf4cB4!!$iNXY5+GrDj0dmsj:;]3JD>a3>IJXf!XN09m_m>fXuNbOmZLh(Sb6WK[K`[TKW'.<!pPO;LeVeb+]KAdgX8BH]nu@K6B.f:OQrm.I+9msgRBS@&S@_uSiZ_7r$<l0eN),8F#2kBs2*SG9jAWrZt?)V*+.EX-6d8)7%3Fj5dEh>bgmc6JV#J(*(06EA=lq`e?Uj>WVQ4h^k$[%N_OW3]iPG3e@>V3>]=4C,%F!D9LWTr[d]%aI#FH+JLKMud*rj-"cHEk_.VlfJ#76T=e/X@6AE_uKdf/P,]kM.0iVDXG)5Ha#dE&2N=o*@_;se^#dcs6a1C':?'-0jsafc8S7-/ud""96fV'1!=FPJBI&eaT\gsl)=6P#<]WEf<#7IosZ(@G.m5.4^48;.]lejq.&%9P?+0RoPLcnhk-X$En0ENSmQojSTHJT8Yc5k^T!arp`uP-:5FT@!!'7*]"J,?h,Ek!\".r%.;+=&8\BK\LfL<7lA@a]T^LYqSF8,\2</tm3jaP:Zf3;dTMca/E5`2*S?MnDi-P4Rc4O9'Zd$J3W/e$GfiC2rlC\XTUr"6#c1VrUmC+6J!!'gC)Vl)5#T<dh3kOPN@t<Vj8_6+']tFI.lECcdNBq$()VWRVI3c$1^mV+4]Y<):YWU*Dc)BCEL]Ke62Vi`,#)E9[!8D7.$s9SY^[6D19_6>*T"Vu_4*cld#)N@,;6K<seQ[5r5l\KPo@4A9o4!u,6N6-MY.0pi!]t`gh[A&KEn.^ChA>X%-_1WCOr+0!5[.uC$o#-r.PkBh[g9_EQtQ-d^_XaU0gOAE]_V5Xf*>tXJJQHKrA.c"^A'kS9+SX(`n"u=<""u4hn"ctHG&<al[.1u_'UIb!<<+m/J/'b!3e%a!!!#-719.r^p]%"!!(Xe0`V1RgEHh%!+9$L!!!"8M\lEoJ8Gl#!!'5T@K6B.[RCT)!5Q%!!<<,P(,5dh!8A\%!!$D2_uKeQc)@;UD>)A#Vi_er!4WmaPG:(d(5Mtk!&R"N\0e@k$n*OuFH9!PI^]-?#68_L,6hBdf.@1DZi<sf%mN&MJFSgK!!)d1&Hf1mlOsA81P"Ah;jpD^T%r\QCPi9hauLkW\Vp&L:NW%*RU)H`Mt"qr@dl-^;=;aTo8^2N2#tE$NYl_0>_a.mRfRsurFkRo,7,&cGV<E$XZ-t,Onsi=/j[6m0=p3rW0C7kW\51,B$(bh!8s/_\JPl8k[J\P8,3^9>RT]LnIN^_CT7ke'j<In?X571_uN5kr>?_o9E(ZM;WEW(F)5="57(SlU@'TT2(c6%`q/A9`LELkoX'2`ML"!%rlg><;i2b5j?+6HnX#Z!3_doRO:e9RPqF*2PP*(rC!TIJHZi0P\dGu+##sY!FGi+"Q7Ze;rA=cZ>b*CcJFXTC-AS5!lDHsN$g-6Ds0tm2IHfgr=uW-^>qLEA!1,,11P##.2?k#ErCN[8MR%$cK%.i-PSL4\bN<8!QSHOXQ:\)#\UtXd(?@XuOVqLL)gNPh.K+rXkK=3l(m)?c,QF%N-YF,cH@(-s!<?3gatY%=D)(V9K'@a#>RIu.=?<JI][L+*d'B\FF>MMRk0:P<?%"GClbs7^Qa2D4Y+!mne*d[:5-O)/?F!mCEc0;@J&?(_ltb%X<>ROafVS2?eHQ!;*WHet=^.qfP4#?b#]],(o0UnU7QW?bN"KAY5,ZQ*)PaiB10'A4nuWf4r#)0-@14iKhNShhQ6pESHh^+;$P1kEibpFR4Bo//+0:!?C?MiSX3*Tu=r*$:TD9c*LSGABZ+f#DJf>.!J/_O)D@2o]kM>Nb*b&B\='*D@leYMMV]/DbmeN8Y`IM\`5tuT.M>_@4`>#XfnR-Y1"6-cLe^`i1nX[YO*dZ+,hjtX<YhOkCb:ZdF(O#aS>22Iq<NDB2El:-6C4/U.q2N&H<I'#f"gbO_IG+QbW_<c<J8/MD'(_3lD7;Nm*?B%>(f4S7(_E2i*rZ$3O/CuSEQPTnc'`u`6+SqsHZHF'9Ws9Re*Ba,N=/9)[ib"C3Y2C@Z8_Zni%3*#B)ILQbgNsJ*Z:(jq:b^-$imeP=,m;o5#I7Vfs(C@ihWc68QjTo:>b&XblSQMeqNC(c_o28CGk%c'2=eeD\n_`Z^(ZWMeBKpp4^RDme2Cl,9<h$\E=u5Mn,nY9nA.leRIPW^TqVQ6d8Z:@_eg-c^<g,O#C&D;S!DAWdJjWiQNq5)%4b_ooI:-"^NKdXDuB_W])XrmD5c]@mJBBT"LS+->.17RPtCF,TV5ZiT^7As5!adps@..TB7DEg])$t!4Y'kNWIfde[nt6B<W3a&VpHLIh:s!ruFF"GBM6eW`&06J@\(-\5u:H)sqCHn+;?`8XT4"@H*Ulf,FCVP#5(^X^0TLR+98@_5m?L$LE2bHp2=*0d&aQ`'uW^D*^PAaUKlk`XV0.LEGe:q3YYjedG?7@mH:pUjt2sVsVTPEH9d>;i\Mp0RpF8DMt/bIV%<.-eFkQa/o@B\2grP#2J@31Y+ZjYu"/>;b]>gY/B^Sb^WRLiq>kDAZ!+UY2u:6:mQ6iFre4p<T%*]PSj?lmIURWORhY&KpD0tq+I.SjMcW=)*pTX.tuTYooshHgUuN1+/<^u='>R+ZL!A+WaJh_!<<,t$X+PQ6LPOg9rtA![d`P7<P*`.e8>l"N</&\<\fTXc$[JRifmfK)94E+pBZ(hl1*Z?[Kq=fg:?pOC2Nu,p\WduTN9_ST<$okJ?ur.n\M4:".IV^.A2[.qpuYbE-:sI6.a&7('=O:BF/.`28T;H#QV@P&Hf0B@K6DdAjd';-AV[&J=@-*i0kbm!!$n+`.2WT(]XQG)&\X5IC.gE,R+5K?sCPL!!$hn(]XPdD%QjM!3e%a!!!#-719.r^p]%"!!(Xe0`V1RgEHh%!+9$L!!!"8M\lEoJ8Gl#!!'5T@K6B.[RCT)!5Q%%%.O;AAFuD~>endstream
|
611 |
+
endobj
|
612 |
+
% 'Page8': class PDFPage
|
613 |
+
35 0 obj
|
614 |
+
% Page dictionary
|
615 |
+
<< /Contents 59 0 R
|
616 |
+
/MediaBox [ 0
|
617 |
+
0
|
618 |
+
595.2756
|
619 |
+
841.8898 ]
|
620 |
+
/Parent 51 0 R
|
621 |
+
/Resources << /Font 1 0 R
|
622 |
+
/ProcSet [ /PDF
|
623 |
+
/Text
|
624 |
+
/ImageB
|
625 |
+
/ImageC
|
626 |
+
/ImageI ]
|
627 |
+
/XObject << /FormXob.34f9dd745fb73a5a42bacb0d1cc9dc52 33 0 R
|
628 |
+
/FormXob.6f6d53f435e6637bb138a00bbd123f42 34 0 R
|
629 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f 5 0 R >> >>
|
630 |
+
/Rotate 0
|
631 |
+
/Trans << >>
|
632 |
+
/Type /Page >>
|
633 |
+
endobj
|
634 |
+
% 'FormXob.53a0efa2a6190e318597d225255b5698': class PDFImageXObject
|
635 |
+
36 0 obj
|
636 |
+
<< /BitsPerComponent 8
|
637 |
+
/ColorSpace /DeviceRGB
|
638 |
+
/Filter [ /ASCII85Decode
|
639 |
+
/FlateDecode ]
|
640 |
+
/Height 200
|
641 |
+
/Length 44712
|
642 |
+
/Subtype /Image
|
643 |
+
/Type /XObject
|
644 |
+
/Width 1169 >>
|
645 |
+
stream
|
646 |
+
Gb"-6#@(6OT's;KSU2`sR5a`o]U=-0Ss_BUcIlj&YkMS<h8unG1h&]h'i\/V3@bH('a4aC.RB1>3G/L-7'bmDF3[;dh7_D)^/_5-C$=iZ8HO8=^RtPH:Jn0mf"_2aX&f1FX_pQOzzzzzzzzzzzzzzzzzzzzzzzzzzzz!!#7rBtm2."l\L8rs#?r60Nc02JPKu3.D)iHOMO93FjgG?usL<]mg.bi0/cbMsqO;\$u+1+J?,8kcG%IVE(Z*#,1oSRI#GJR6V#4!h0Y]oc(Erk)@.1#WB.cG/aR`0ZubFNVS8oQ>E.n^rA5%[Uc8K!h6EV-(E4\Yh<DpaYqUh#)m6"2M01*"3C`IEt0JKW*^BPal^#OCeQ'l94lm.YR)7GZ;L#oMG<#V!WC2c37DnsBsmZLQRr0;ih`8ID>IVaV\ejh:.bkD:"%+GD5QJ)(su`."IiU"OpqER*([C*Q(u!n/2oLH2)R67+T_P"dO7W-]!Da<A7M-rJ;n9]D2C"_Bq%?8%eFD4"bVQX2Lh7emXPlqS&"9Y,'1JKrp>!@ZU3]E>:e+pB?(;^HrP*Y.'<0Q@G.*!kVD!=.0_[J,>,C!a-:UK_0dpKf#3FM4sE?#oI%qSl,iYj[Y_,G0N_^=AQ'o.dbfE6gX!'EqtE^\hoE>J:]eIt1^a;6/4d&U-p_9-5uLTYF`hh>B.$,Fk[0QD3@J7&lE^hlA>:.\JW4B^D9:EFmCoG"[tu#%LT<;0U)][fdlmP])c<p2D3$2$J]gJ-b)2Pa?X9?YA_3-;pn52+CYGtp6,aPI"#d"g-/08H)RrLDq+c*<:aWp9ApV2iN,9bS,7G@?bh84O[c5N@9%VDTh>at&&q"Rm^0(F9L`jgj2\nrN,pXc.p@aNHMfMWX3\%%6DfauNm8<5!R/V*L'4TZZgtJoZ5+o"0o9AqYP@Ss(3c]'IBks@7.IU<;<=E$9g&<,OI\bk6N=HpmN,_fn7EWI[7A<]"7u-=CM5j=m/JdQ(Rn_S1<1C1*^Re#D-d4e3_<T/\H!<%Y@p_$GhEi,FL_9?i1UWY7?_""h-m'Ip>LD2?jJhuDFUjArJgh1fNt#tg7s?pISH0_JLJNA6U1E:e*KXn8<s,&]M,MXV,&)c=$gL@KO,`.V."V@cM1L9>P3%2DDgb17Ah]sjX1&W\Y'e1eH'BDi?;j!/"O9LOS5GD/\Y'.\"a;=lf0'\sbr!<%Y[W`nRW:3Y]0rBVq\*ZkrT46pT[:cC:&\g(DC^MU5R]],$HT@;o`U?$hu`Qb*>cmOnKEk3iX*m_O*eCQU4Y7Im>-g8m?j#/Bc73a%8__AYbR+.b7c`<1&_Lecg&$"D3LS_P0Qht0$2t@Kh7c2VFSe<2L3X1gQY7;7$gR>rnfYf*U6FHf\lL&]uR;a*Tg/3=TAGX+N`30ORf]_Unf8=]d<sFUSFarZ#4o"6J-(>=$B[J[ir`!lW-PVVrA@"dTN(5rnW@8es><KGOO#HjAl&Do,LC]mkX!.`=O=7ok_>dF$7X`gh,pce&L<,27I9=KiKD\I#s@J6/*uf6S?c;*4a&d4@OK4f2SbE_HDieIBE/2"KO%c`,1?_o(7i)dXbVV<55psQ/^S?kVMk7peR-85>6Or7ri__$f%LX(FJDo'6T)PbJSH0pJ#X04J1R6=ZXHWkmZJe5()p"'.)C`q+c2^E511S@9JMbSqs-9ANAl-J#h;rB=bVh)+pPdq%`_hcpqa/`hW-&i=XUI]&R[oRgthSj[H!(F@W.b`GPjW)oM#KU.\@NGAACFSU@]l9"T]([`3nq;kDNJ?D+.1o@QIb8\$\J?H>("A5b1NbQefu)U7_^Z3/$:r6h.KlL*f9TKZ+6><k\KiR49G[.F#*T3X&r_?jJOj#%'I3oLYaW2f((b1JTsQdTscejJ5rcF6K[0p<N1dfVnCrLAi$fJ`P^,jFZKmul\BF2E[2l&kP=:#9se2C4M<_=;PU<`iFT23m:Qo>/!j1GmKg^"h$<;;F`+CYeshFr0i\AbAtS^M;U'=mL\OiT.[<n7'"jI>/[\D$tTZb`Dp6o[WK0jD4hcM*[<,;^&]^\^f6\dT-'iITT^>jA0k3Pu61'>?T&74\2fJ[S:K"B[*qLWi^]t[BQd>ZSgY1\@2*NVh0ZIB1R:g284?`L\AH/0i^5e19DS!`F7>a%dBXP[dLp"piSkq7qX>Vn[)q;6b^m3*N4fBdFB<RpP:BR/6%k<Ds;Jn\3dePrF-i0i?5u]Mi/+V^L28'Rj`3!>bF2F8>?@^']hn9A+;]&mO@L6?hs-9B-K5';7<2Q@3al_?V$#A?%0/u2jE]9VK+*[*ANNQ;I%Xj0c_&WA05$4g>4U!9.4RMr!6(lP6kOE255GOHO3[trY527]6J!g71ClVrB/%2+E'p6Q_tkdM].a)KrM^d]k@<LqKKGu@k&rqY3sG]lsG%0[Tc5SX3k@#-R2=<9TB+qP`=4LY[!s)8@@6SfZhOhi<4.&ag##;a1`:_@2--WF$4O9r8#9i>Ha`AF%*1E(\QrGDqE'i\`D8YIM'm]D$,Y@>Mm+Gnk@uA?`!Frrj54)?Ot[`=f)!qajSKb\,X0?kP$B%^%Z<BW<OC&QfjX;q^5?f7!0Fr*/r<m"//;f(k9eWW]bUJ+TQj1HNpD8=V6m;Y$[^?%Au9bk68`V=$-lX5#^9gpIR=_<"#7\L^Ra#kqh-Y&=L?'E&<5"*s=3CL>*SG?/ge`NheB)@c+l$rE^Oe$bM,Ne^GU6qTZJ@4h`6k)glr[Cek_Smq$;!oY5^iFAk0.YFGq_1YbaY)nNR!T=m,oGA73YOGkaDjGtYe9%6Cb]l!\&$`UAH=-ZS_\^d6R'i8n=Nas71Huu4PL*huP=+oZZ3^*V+%UC_=L_)#&WtHX0EF/E=*FWB,YSSmd4i1)q]\X:UO^'ud79+`BdR2[@JM`Ier[$tHZ(4bXp@PPJP8Yu*-X<C_KQd-^mC4I+EYiq:QH*j*'5;Dkh8$CmWFAG'X&/f3pe]WUb$mQ*:aQh*0chk+FuK6gfXHK1h2uq7cE@KfFq(*U6<Nc2[ZqL;ij(eK=lijdhXd_6YnJ8X9gjQ5??`h2;s<,*(YBT'eGJJf\YVNeA39c4+4'oKY[,]9G7-jPKV",%cus5&Ij7KB?qu;!>J!4";cAh&Od*&LWcE&tGl%'3,R5>YA`Pf>YpS<7BeJfOpYM4FU;'p<m>r;LiDS%NhVOe"'$E#M]XeO;K;d!X'<eXEGM2X`Ub_Vrp*[5TFg!g=NK%nk\k?8Jd(cBaRB:_hioTQUg=h<'7'NRc$rO;:bl9ekI3nB,_lHCZ(i?1&F'S,%,5GY1::iX/l(j:?%p.OqIg#`4,454O\Vr%F>t$VOFMM%jVGBUXe+S8'<tsdZB@&-b'?m'-03!%U8CYY4E%/7P9LU.hHr0>-90iQ@49NHr1R-3'VL^*5#c=]<V#k#`2XBd0DCYiBql%;?FI4Yo6&97ms.;h^#5o/,psUi8.N8?]ikef?`BbVa9,*VgSUM8-!b#FtQ0_1UGk$CpqQB`'rJT)P#N__U[.>J^F[u&NCNrVTD=\Qp3ACT2=?VcVb;+)LS1N<j/R*rC`$$AFb2&J&r#+mGS1\Np*p2i0p>=+mfMNqg3)99UAbqJm\"tY:`-h((>%A.8B;)2>5`oUC]sV1<+Ve%Tp30JIJad/*16e`eq#ZC1A5t_k6rb%]o9#<>r#^;6]b/dHm.!Q"f.&rrPAn63El\I.)(+Vs:-ZW?Ll".Ka!O41&\McRqnqnZ<[R`PTD`R!rB1[_M\3]8Il&=m\Cfs[,o#n6(m=tj'1!(7eGk!UhI&F?WXh1$m>@O_I5p%qjab$ZMrac)n^B".Z.QD]@49Mhq4-ZX0bG+4;6a4"N0'7[\4VH:ci#K2E^3%Uo:Kh5[j)e^ja1@n`T$VYRC<DKiXa.eP"ic+ih*H:L7nc(\+20M$Pdo+0PB==h!-Q;Y^?9kTpiE,plP&JKI=AJ(!kF9G"$IpY]8Y8LTVXfgj!`kmAWB?K]71GpQ=2J^2-B!.XP.5MkOMFViu,EKe_lRX)-:s4oK0VU^$/,._;j%YZPh;0^ga`oKBhKbjMu8DB]Oto/2e0/eSn-\XMBn7_jY^im>q`NO>I3j``V2f@[Qb;;I@Z0$`pDTS)sc+$SV)JXjLgQi0e+.c6]cSkm=a<K`"o^:)'>T'EJ+^45h39A;!NT5O;MWsuYj(jmq7q8qYmNqW)AaYc;RAG^kfo6\J0$ik>X,h^lcP)tbj;3\S0@Ue?G+XAY4USs-Ag8tfemY3dV87&i>2mfkn9j+o,N]H8[iO&P<D=(gdF)'.)ORbI14JPJcRETLA;b5D$8T)?22Dm>!i0'(975;jLZPjR&L4q&/q"MO"BRer%RUHAQmV%Vf%q[l-T52EL_.gr&igUP;Q2Q/+g*ZW,\:U)'FABiHD<K<ur!.%0[\=U\,9&bE(]3kIZp$Ff1<DJS(Fo@[?OLm97_2r%^\iuhln\J3M!j2H+0VSXH"bsSKW^D@jeXj3FWN,>h>ojh&uKCnNWX9*U7aX9]GQoBC,:2HIF`c5DinAlJ+OEN(Sst=b""s9f;7Qnp(),'l5rp<#:R>s<-/]NZcPo1LtJ95OCIm:<*82a6.0aEJiKib=D8(NbA`-Rj(QWM]p#csWXF=9g[Ci1XI6q9+Ze3C.sUsq3Tbr#*K&e64ORC+O\/BnJ0N+dF*X$5'6mhNP"h%1`me$3'BCKACAjK$ZCqEt;k/mW9/cMp,H<tU0)k3?<#nTim:rES`J22r(9C2ffSe3Sh,#igrINfQXK"lRJMSCSmm+m`ljL!dd1AEI4.M_=hk*+'Z*L<ss$XPU;#SJ>1W'[Q+<<o(Y/cqhNXJZV*BsEsU$Q%D$0tNgQm_k,dHO^+Ks@Pa@8D;g?-cNMG*5T1VdiLu`#k-S-(BM6*)lq@?.>pu9N`p;iIrRC^j-MToTA^[8%I/emgZEaof`eU>]mEo[u(q^_IV+2`0Op3jn?)-;smnUXK0:_f%GV&d^fpdbr=YN(j<O?KaOti/b5Vc5+8H6S5.a4p1Mmd4oK0VU]sK)]K#8Q@dKK)@U,;BV!Ymdm;\WF7$:_W*UotP_MC?3$=S:885r1XggC<D<jIo%:WC$fN9ZGA`;+DSkN5u^U^"D8aak`jqkKT[^,>"8T8FMe%/FTDf)*u=mp%:r#P0_e2KqhHYMFGB0dtr036LHB^VPGNUtWhQC]j.;%tE0ADcM;Zq+eX')s+QnXmXAH)D"P5$"!)c3;`H[r/ol\3nmU3bihtRQ>Fu&7OgH#5Fm&1o>3_tDcH^9Rt5m(C?<qn8cY4u8?t*'7/A?:?XFmQD:[:hZ;9/0FW63*n*\(sas+EkBdg;OrP]A5AXcQSgg$1^EKHGhPpr"IEQU/J6#N*t9\5K^g3`8.fAMt<;IVk$'\,+lYnaZj)]G@#dGAd!PM`%C3s`-&]DGf$Ap##A@OA+P4hi#_F:d>Of&F'#1OCoUk;t``7+=j)AMaNeV'p/=gK-B+W@$`4<q,$gECCHmQ"f69Qur2X(MjJokM%#Q'0M\o.dZ@a0P16K+:m:b.qm[%nF(hO[p4[RU6:gs\9bt$S2U>&.VooXpqldkfLFq$Z*VCJ,dLutn7V+)j:.",5i.gJ02FY_;W]DI\N9&>W+af@T;Kg$kGY++b2P)8mLWk#4/oI*$%f;T@)jQ"iij&)[94&H2E[#Gfc>!ser]p($[hJ;42M=p3`M_h6T5$!_#l\P+$B3sMW!G888$UM.QK?gMBlE8hI:aWn27B&r,7!lmW<FY5NR<ip2BHl[I(`4g@dV0g9c?^1=;eHKK&\F83`:MeaH]$qeO*-hFgLfSmYhNl3umg\ca+$k^mC"]A5IFKRMhq^8pFJ,L26Y1[dKE)CPAhn*<SF9jk5@3&CAHIi>m[fC7"MGO$jF1"t&caL4[=^2MXA1Kud#;"#>K`4?*&W]8Js+I6j2DS66IHQHE3L^9k-CN7/e,PnSrB2@>H=RtUj50MdW6u4q0cZ3hGrfE'ig#S3kpg#tY30J4NV;U$1^=ftpaG?1I:]\,WT<k-oZol9JaiT9c+Qu:_IkGr=,>>O?m)mo)\?L&)``1>j*B)>WqpKq<p>4[tGG?m:TaMT?^RN<&Wqbc`-](pXDb%"ce%[e9@^*QX"F2\DZ*_t]K1eoErZrZFRmjYHDNgM[>/T`pXi=hP,=s<KB7`o8Hk\)Q("^h+o>atoa1NFOlAig$q2$#+@(BBMFkDlZ.qdNWeZ?'YNQ:XiR'FflFa`/*A"*BU%huN\FjnfgWiQ!o#j5dMeRoa(O4)A190_lDA:HN,e:!C)KZZnZ2Y?1Kq;"6DHQW6*S3Es*oq/IRDp+I%rVs:_ppU,D>O7)!2<kW@abu9/J((Rp]-7'aj(5So7$;A^EsZWb[%m9P"l6?X]e>\#`$\RLX+tmJJXHa7[RPt0qCW^bD;F%(ZJT4<e?$je\?H^kWG?[k!CHu[Uo/R1e(3B%f(NrIPfFeFdFi)1,[ju%g-)o?>W(E.:aYSK0l:bJ4\O\Z+BuaSg=dq@dV<RMMC4t$X)d"@Dq3]ilZH(<iXRgY,oc=HYN;5C19-rE0W47loh(8PAh@sThrYjSgrE=N\;Mh)X0Y>6bMh.7(Dqha9*X]c>U>V[_7lRKmm-]>UT=:^nn[jm@)^2%4KI63BZWjFS_s$K1.>.O*N6f`hFc>I+sp@[n2G`u&DU%.Fb0-EHrKHU(RY2jpZN$/Z2#:!Xs$=ga5487;F+ro^bZ&d($$i&:YCe>eZkatpXfY!XeIf1r\\\"U7aXJ/t:@/qoejh)nA#qP,RUKNqOt*.NoH)fk&4=qd6/e&7bC*;IP\$KP(f#4"a)9LQ!'#Hb;WW2)nFHkNE9H-,%Ms6iMSO:I,>oO`p_]B6fA#KA>oI\0iZdK;W$Op5j6Z/^lYO8@!B/r)TC4ak!K$XP$.2cMYJ)k?FYMY>s=@kJr9#6OEB4msP0seFqf'rqR-jP7c>`RH(Qn3RNi7Vj@%ri6O358Z0-qIG8oC*e&mRcCrS^`'>)e%uPY-h/-VV2,<pi>h@&KeN5k(c!8nn*-onHXP9Ag[d`6@O3KcAfdsJD-eANm88AA#l@%DUW]odnSS*QahL0sgC'l#,H"eD(#bO/"GAg$D:f&NYf'U"rLf_QOkbN[Fn%.rG7q88CNrb%%][?hfo'u-#*,K9+=a!NX+-I3^RtB%Pr1\nL]:!U:'AmQtn08kf<'Y>DX#kQp(%5W3r3INB*k.?HLOVh>,"A)=G3iFVV)JS(25mU&7<<V@]Q,W/4'UJMPsu#H'u\&Ll5A?r\:09mWqbc`-fnWF,M2>I?Q1@M=SAhnmSBXRDG]e<)8,udTH4"cgZ(2kM6oi(!l*d9<3WW#VB4&"<3U9AF]e--LpmSfcAm03(tG29J@"\j$<$*'I=g)S>VV3tZ/mP6URG2k[IJK*'f/l.hE3hr)W`.@HQsSu=.3b=R\jH)SU1!%lL@Nha7ia*Xg$YQW3!(2qjXbL(4<@,VfONfo2#;oHr6FHQ;P9/m]5QkLUoj":8:&R\hgU2`$sdGr5cQZ3KfA@/n)=@Y$u?lTWhNh%5@TDK(9P/K'-scb_%0FSO/S=`CN>?MM*AS8,pTD[e;/:N.T.6qH/L>4DA@)pk6*L;;8J+%o3_oVek$Dijq!9Z=U%N.l.7OoablZ5<lIBr-dJ0MV>X6[c0mAbaQ,#`+MTJ[J--'/#cP$,I1jlq('!f]UgH4@kXQ-jpU0IfsS;Rq7qGs(:/m2bJ'G9G0s^R>:P:][slBlG@l0>^LN@"#G[er%9AEi_RoVjIR4ciMK\r]B?I(A$\[N9U+;B"=ie&IPoq8=35B,a^S:)oN&-G/;;uLQeCrC=,<]nVbeHlP@a2VN&]__%MnA?=TB_<nE:[/lD2J2]ln:hG(Xh:VbPYfp4b/Qe1?@`%9-\*ZV<n1,2Zgp"8]"AJM&ZZ!qh#oU,`"fWN7G$po\hhkiWR8b8uRBh:os/10:)uaeQe/$;.FlDM9k.`7P1ONr#LW$M192<HV,0ADUkY$1JE7H'"]N*,MgTHm_<'pAq.q`1u%n[s3$1oT;o_CVe5P"8R-u_$\;>nXcXNRmZFc-2]F-)FdBID\`Buc>^4^ja<k.D$e\-J<UYIU2_nV`XURn^Ej200]%*NdW)hfh-cd_1TqC8R-rBa46SBBS6m4amub+$6Ie_YW^R`9e5=9:WQ<MC+kb9p_-ITRhNVO]NuVIC/>(QQ9^_p88W9cD?T$4Iam2b2I9Nloh=Cg^-i%*oEC?H$H9Yd8#_Z+-Ma4S,CZurnVfE"G@f'dWNOD)_\\s;t_U'MKTF-H#GdVk]JSNo>Yi?I)-?e(A8u8gVi/tUAtWW\E(1M1#cb[_nJE<lGn#*?XaZ1?KL)C%rsbLf+)Ll'd"I`,cR>3lh9tSNKY9^S%n(^fJ%/0n)(RodfCt<IqO&^-973a,@LJ+<I`Wr7_e'jBAeTbWli"483/ipm9in;,UUf4HGO]t5]mET0$+PRES2GaXR`JBn+fr,=CmTm]b/`J>*bSC*b?1UBBVS%d(f)H`")AZ%CR1.b.P6U'1`o;@s<K78(C*irYp;8dJSugAG]Y>%K>lEXK[_jJ(>)`$&c'I\nXO[iem]!1Y-kh2UNcC$0-FgP&N%FW7/6QKLG8,A%V9V^8,!W-oPHKJ0\@D=H*(UZAmPSXF_kR#-Rr$YVD-I/Q#c,[\(SSq[%!1kOV1@^MH#sO,hM1V^?;I2sJ1\FNeI5N<VW64mE^pnBK`L$W44;n+iLU'DNJigu"+k/+%!$"VCd1XOlQ2_jT%l2`D'@mOE)ZCeQ'G[P9BnL&X7+b[3+tRPjus'^pL>Gu#c,.F#Y9c,$o@c'1prZJBXo[D$rfqY*JYU4)!nl`R"S3_);S%_?K4C7u@`*7[t/:T,hckWOtpd!tLXPC0Ie,I%#7<dDYT8[^kV26]lH#PAl`ffmK@Cb_-;CpN55'jPr40BbsYNW3f6'Q/EV)-osM&-+mG8?u5E!RbON8P.I_eX`8%'Le^F;&\PhHtB>(.`ddtn=RP:2"J(cXBPE!b7<;SrIuSH+#7dSb+J2F:!0Uj'Vo:I`P9[8Zne$cH.W)r\TJ[^AG`=smtsgN@+P-m?cf=_DV!G+F+,BZjbBkom:jb/D'dC*lD'K-+RoAtNI["&AB?a\Qr7fPQk(P=X&9$AOeDpW+26N2bl%..]NMJRV%C@[juo-NV)/:,2$`.G2H)L7a^uJs^>j6GFHaeag[CS`a2Os:Ft!M0/aEo&:?idk`i^t2k2#tdp,crs"Si"j&.4ns]@cip42TZ0?&)ri^Pn*aem'Q8)#6+]8PLF)0n.4kF08grc_AbI?uL-!qjMLFhr\:N2RJ?pkA7qmK-XZTEg2oUjlY^&VPY[c,bTWa)W`AMG?."oD#G1M$#E9[DG-4n8DF')G*l&e/Jp=/[e\sBG6a'Tg"Nn4bEsXG\hW,e^ZhJ-`J/jp?MYPFnoau^G\1Z^k8eY8R23TX1nnNMnMp\@ZjEpq?skd"j-=F(ETOeb^'QE&mM(HeV20:bMmg>8D=\<%9b?^)<cI*h)^X2L$M0=+*.2YshqAS?c/?d#8%?2Ap>MEeaX1K^Go$EBq"#^h^Dm+HO^%QnV1*mSGO61_pQkP&-eS]WGm@J"s&\BAZb<M&*Os`dF<rl+mL9/DEfaf^qh7>#CjkLH*c+LpDG+Ts/$K=!;6mTIr("!E?pr*pj)YE`BWsCHbq0m<ABQk01!S<:0;*;\QtT9gE2SIfgQC1Y9XMWfEIR_@r-KXk"AJ7>mMl0\pql"(IqaCWOk7r=GYis%6Vpe\+J"P!p]pV!%tEI#lp)$$4SY*6o-<8XDG!JYFKPX*m;gh?IhgRPdp(Dp4rqA\#0[:5A1RJ06'c>"rXNa<,B$4eg+0B6)c<oKXSk5bfjJ@42Uc^ON+fFRK$>kdY@O]=g[&^':?QrOiGd2Y2ko,Z,2HYSY1KCbpF<?3h'N*X#QOj'$Bf3o^G*`lmGqW,NG7Hja\7$b2IRh'2RWPp2B.T+fk,QUJ.W7A7^0F7j-=E_/`gP`^),%g^H\4!np8U(la\OLAhUoh^3n8mjL7G9h\uRr?qTtg75?=uB^Gk"dNEWr1E/3E81&l3*eVXQ%N,Zjf\Ec(miMQ1zzzzzzzzzzzzzz!!%P;U_3Y-z!!!#oKRdS8zzR'hHT!rr<$z!1:0EA-2f3z!!&CoN(^GWzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz!!!!tM"e82dldd5!!!",<qGk.Iffcd)pF;pBleT*51N:!.@;H!Q'@Li*R+YlMWrUe'4[p"!<<*"N"<:n&pgU0JN9`Z#'48ig703#=m+s)e$RL+anABce#4OHTuXO?W_/Y!!!!"?%_Vc3>Qk=$Q3K/4("f#t(Q`IU!;kqd!jb;#+h_K&C'mlL!!$EPJ[^,HbJD!8dU8rc!h7[!1-6eO5Tj`SBk``+CMPFpe$9]QV.Ao\mnZVNN0I+C>[2JspN6049F%1fZLR`QH"P2#OpqBk@*X>3IuNt30JK4XQuT=Fk4H0B?aA'r8MAA)YPM\a]QrE6UiFc6^UR>nV^O4mmb2eqq)jdQT[;hc@:Y/+Jtm$tDXQ`Pk`\ehH[At$Rr$&>.G7O0<`W7lHua:LUSFT^_]K<9RH\[.Ms<o7e`EhiT6JNE@R_@:'Z2a3S`*(]SsAi2.+sf+H.fk+Hi+cg.U3S'Ss'Ydds+hOlB&jmr\>bR-^bgo%/iGOn`lC+e,%)Er$On@b=lQ'_g/B7SCM@hgg_+>XjWDuD@X:_@bHI2h@XTYXhhX3NC*5>.:9p(-(gX&.q8NF/_BOp$]S_15P,S(:+8kPjA!l&o=n5;&D&f=gAMo@=)0:0q#eFY#djQ**>X3W&Z*=&HNc=*a(;oH:"]"8oMWurd)oZa,ilG3g$W1j0hRe=m1T!DC26')KQmm6Dt38BG%J.18FQ'DHq$:%!s=OBNNs9*]5IITr&pUaN`C[NoPue,rGt@p"S.*k+/CrMK7bOk>"/'r)Qd$t#]HG*,(BLVZR]&qB+GCmrA;DK#0KOrVCh/e$I&sjQZ'5Z*o@HGfQ.qOP"f?i7o(17GCbhFM;:7;lgEDJgr-ChLTO%R-JBC+fA3iUa2+h%R@Obk.0[qsAG\b.j(BLfA@d`&3&O]gG=\\>HdYX?XY^mGB=r9J"032eZ\0UW(21>2NW(1i_7V(cHEagVk1[fr9$l6nf.+8t'[iIqIQ82Nb_ajSaThYu_:q3/+3(aUH\H^T&.0(/%VPXji$NJdLD,Oan[9?]nifpA"66sX.0jBZC;6?3HRI$%`9&^c.f)T)er7pB+`]>c--dK-?nCoZLKCILKB/ffC.a''./bb#SVH[c'm>L'AOe,r:=bF3\tRKldQhe(Y:$*3p5Z&0T?OC(AFq3V@>Q1*.H@2@FG`IdVrSU$oYMZHCmj3a5"WL91+p""d1K-j%e5=@4Ag/2j1f&NkFJ?82I=MFZiof'W;/!ZDfB%QlXF3k=.m<]]uAi0GH=_E='rXQlNO2&r6T*G_rT[of,*"d1N/kbp8,"UDV8L)&1(P!DsoY3RrG#Q_>ZQ@fodXC?;@8+j0OEZ`:HJcQ>FEuaO;ZHlml4gk^(Q\X%n=tUq<q'05@PeE]C)a3`j!%nUh>d^%L^;?TGB(Qd04921+c3[S"M2aK(..NGB)LMQ2-9H-*=)WHU%oA!du,6UFAd7b>6;/Cnek:;"/QjeWLDXN/8#0c`h$7lP-ucrdo+SZYg\X[)/+&C[31@^'-DFnKKLF^=%3H3$(6B#T5t,M\PW(GFe7HPGAWcr(m#+o"5nZ4.LMmaX1QDagC&d/<mgcFqdt4;$BfIVG^O?R8Jrm)aB0VJH+'F.A`_8P1ll79:QpF)^Ta_gAiWkW*7!URhm))m*7eo&Q+u$We:eF`bdOV;\b1P3[<sP"j''(,;@o[\pX8Wp8m)!sY[SX>S9@&/!_Fe>8V/*Za(<TqS`'eM9!fPBY9YG`Jmf@sE+YG3sFQ2Oq&BHD5V&O,espVLCeT!-,"m]KQ@RRulMEIX1TIP8s+*,f8uV#<I2_67k*t<*$:rjt3:q;R826io]a7[Pc0M62?m=q4q71?Er=K[GT5u[qrtM>7MJ"L-A=o#Vkmb^iZA75D^=d]B.,eX\6Tq:!V6,hdQWeEs/lKURo^PbJ'f>_?VT5g!_U/ni`W(PrVKM32*i&%guXDeV/jka[Frno($aPL&7*R5ft'gl%DQ#TIT&>KNfribiXCN"^Iij[SV.9FG'\^qub4a;.(qr0bGmSAmA'PRWNqI&(;-2BtNJKkU"qiFX$3`Cn%(:$B6GC`i/!:NrAe;_8P+MZnQ@^jj4!!H9KC69u*80dLdj?];9Vj,s%,4\!Wd8nk5@G3RP0\MLJ95>TR@p3o;^_`_:+a:(IKTp>\1%'[=")^DJEd/,%KU0)T.CemWujB3nGh+'I:DQXQthGs;HsFC7..br!qQT\[f\NdBo1@q%/q7S,M,VL*W8C27T2J+iX2.j<TW5FCZ&#,FZEdbH]CP-(FO!Js>:1UWKPpBHAclQ>t%_,If!j=;5?(._89VlaS+TrTucE#%P6GU)dA<tft)V:pon?6P1Ik?BOm&hHRW6Ok^$o!4].3@AKbF^A)H`eP-:I&:>>Pk@OuEfuD`Cn\+A[pL@9ODU`#@"2PtmKVo\9V])BZD6CG87(p'3*j8_=!NfOhOeYd^.L&S?6BmS(YS69?AWUB\]^DMp0M2I,o"l*m/9N1WJ2>C;`5f6+Y>a_=klHGhY6fRlcHiWc=k+4(F-m.:_!COF`++:o+a->A@&PGq.q<)7iBF',4hOB!/7+.`H^58Has5\ZE<t8P>1QIc0'52k)r]Q5/m1V?HK(_=S$kP06>_$NbbDPClUAV4\lf.%?`r/GqtK]FO+9o*#o3\.<,=Hbmm_f)p.oFD+f-u@9;g+7J!nQbBWgA]WA^'$+`+<;ao=RIpHjC2tN?*n>]lgi6okY#+JEbf(N+rD'hl`Ofq4Q\AbJ85=2XfY,S*n9+<DdQd>o0dP2X5IiMI75Fc#a($SF<dtj/]`cGR4i[%Ut>B(`&&_6I?nqq]2\E)-j-3,_i^tV']PqgK\Q)UNI9GURTJhD:Vi1e&82_0&Y[rjZ=\X8Bb'B6&g-u++Ppb!H3N[t!'VXcid[u@UoUVd.P\WkA*d;Ps+94;$Pp5*-*9Kb[EWDN"9n:sbm5/Jpol1%1O0!tSi_/j0pAib_Dcub8Q?:3o<MSu!Ar]K?1)Tl6)6il&U9P*nTT,fYFs&-:4Ms0pAT`BQ\/M)^nL[oYMh38YRO$m%q*LF^"fM/)Y(>mU"T#+h-L=`'D6u!4@;s>HAm6GHLW;\)[2ier"`VtsX/.E:h$tiTZe/6OBX!hNPbA_Ypc&,@C7?!hI4$Hi>+Jb,$3]5FdO*'@%QeVuC;B?=XAeK<tO"$Pf=8*u*+i]_J-qr8a\_e3t-,%K_G5+PP<0;0I`2kYdMe$(`_/]!c_W<7@BSZ'0Na"7fGO\WU7W4GGD4Jm%"k?b@&a=(HG%(9R"e3c"3X6!6XdSq>WjV.qeu`8e9_W+P5\A3[,8QJ[?7acC(8QdJ4$.4mC9">8`AnW$.4<fe$tS2I1ej.8^:q=bYHOR0hWdgn2X39t"QU=6Mf[V,gW;*<o((#UYIg,W^ajlN?"]\`5EL:`IEgU'_3arne#o^R78X^g09=B>jd<.*+S2$D)YfnOQ]nIOTCs`R+N]]o*@>@q)1b\KXZ,Xeb(YU<nV?JDU;q'4De.bD,+a]oqJtKQ+4YM[hKe5s>LH(R5HPK]4k!YIQm2Kh*Ic/>Ftff+Hnu4k&^l<qMVR[+;9eQ(FS@r?kS@&R*liGl%_[JJRs7O%m$huY+-:ro-EZ"?H;,:!VP.iSIRYjQ9/0DrHsSEjH[GG%mm`H&P"^q6p\Go6A5cs=#I89KCHO'XpOlmi_8VIjj@iO@H%I-Jf;HCVG's#)88m[sq&1#Xh)$rUGQeU8e8Jn-$oY5*KLT([<"\hjHQQIhIQP6(=71HTbI&ao;$</),hlEsfa-2oP[m]7rlU^H(WI%#8^PLTALtqMj#J#TFnMFEZj3mrf53i#Ve@dcJ2m\brX$gK4GGjZ@\4te(HAaiX2^6I/C):3c%Ke8L([[AJ61rD&gj0CI*ODT4OHDJAM)GmU\X*gW[E>*q$Ys,"+7%1LjjDrc7MLW@Ie#]bB'3,j%m:+W9?(.)65rGY4Q"!i(JI)mQTa@<8_@;m&1OD*2e1f1?d$;AP60R.ofs\'jW't[4rh0b3]U9OiSdi'VI('Z<R:=B=-Q9\uZpMo6-/Ee1u%dM67<n:_G20DJGA`F+(lZg56A"9@rfmk]GPX0B..C]GULqIQA?2UD1_H:W+?<&Z*;\'B>qBa8p-d4Q_]r'dH1?:@pYREUE`2qTVI_ouEd"ruuF87g0s/_ecRn'@ef9MZp8,\BPQME<3M/_PE0dWtWYfj2k=9jud;'D4i8D[SoI>,n7n],e$9;0H!rAR`TPpZAL99)_BfL.*R$34+31]Q&gmp1MrZ-.tm.XG[t3Rga/@gr3BrS(ESNKcG.,+l+-S\_,>^+NU8htp/Ceg@PM#IAE33)'MD4t:NLSu2%)8E&k]JrZ6;GZLA5YgQ3rCor3B1EFIY=gXfY=CGM*,\2I"\7`?cG+hdfa(-Z$-@LaAPOgK:7iAdN`_6'jE/m!9At1AV+<Bc3eQr/j:%I65n!EH8n.Gs<idb-G^[]Qq](-F6JbM<A=P)KV[$ClD/,r,MOdaH-:PT(>T+2G,6aE1j2)VS,&]WeLBJ)XAb!fn@&8J[b@@2%$>&?QZ#Bh2dSXCg56!D4A%GPGgBr?;jJ%C"X!a_0\D:?`n)fQ>BgrVOBW6,U`UKfC*r1RhB4:Q[VkMrI_qXn4P;if3td)c_$>B><<I8Y$J&Kh8VN5-6r9PKiK(`MC%$(\QHss-X39T@sTY76K9!g6QOss:s5[dha6qHq;;4.q$oVWS%n<_oP`qA,M<?NQ^2H?_od'6]$R'0SsY<]`&Ob*9=>e?2`r^%lguJBX;[7<17f^R\9]ifm,q7bS$?LnR`,C0jp5Yta1qY.6MjrJhCK:^1I8):esko)<2l+jrt6Do^^<i(W]?<jTlN4a2IB4or+`_jHWIB#5GWZ;:k$H`kTKe9PF:@VQ\)^S[$389o5HGU/T_MP"&n,eNLS2B,+VAjs6MN<.\eWNpn.?TH`/?.VD)//Er17gO2$c+n-?[o2nM$Z#b,:kjI=X,(&n.b"gR06F7/b0UjZ+c[]u:t>!VH799Q?=NXt8cPIg!Dq8rL,B0f3/)B?bfp$L/Yr!--eA82XQ;mqm"Y1OhZ&Z*;\F2O=B!asJUb5X.R^KlGhIoJC*Eh_a^_Q(7CKMt!>:Y2>k[Y"llJcBh$T+/cC_.gr&@KA6q3hZtK*)F#;(aNG?lGTYGa6aHpE0RC:RO;#k0&eCu@364oa&M%o#"2-3D>3-O,,>'0)lN:biKlacntWdi=%6[aK6At,E>CVODg50ulV4puC=-ANidRSWC3Xl5fubg:4i6/0?haGMMfjE:(h,5QZ\Tosp`!WidGNh7<c+#'M9Q[T<a/e_0a,p?Vlnmu.k5FQC(f^:['[pOq%:3p;cf7-?+&,r^TJsNMDnYV\]he3`ij`;IKfV>0#bF@\gd868)<*'%<8:%*Q']CP)XAKhXpuk3,@aJ(t0CLI,U-A?FBD;c6]EngTb)b*W&R/O)IfFgL=7;1ZWggqQ7RU@hB1bgMU;Gpf1$H8[8eJOQ_\Jj:UtKhE<j*;pRZ#j.Ie9G"*Ee]D0*-nm^ZT@sPiF+V38pZ:X@>V-]+N^[Z;52^@>6pn([!i=Y@AeD?cZQR(*Gc1O/4aX0+#'lEJqWbZP5QgU6$,h$o2NBWqij:>UpDGc^fqG/I_n[B"m[[8#6o@3;OVD0@Nkc'/@.9s:?r0p/4a8/Ha%kh.:5>UPLIjY)XNGqT$SQ]c1H23+GTWqNQ-Gt&TEE!g=Ca^PI99-Z&B(4jCX/j1B4-D]BFsgTr<P'1"8rK)1"Cq-#CrrYZ9E8I\J@C#PJ#gZ7pG4S2?'ql#+0rj]c%O1XL([^i]Io>FK!tU[s6f&tb@Q81T9![.L4(IKZto/,dq(AaJtag=i_P/nEkL"Hq[2NDf>Ljidmi8/M474E-`JV=XpobO6ekk]%Wj=S0Aa8G.ideMIC]mP/2+hlhb"VKVu&X7mNA(Yaja>L%L`J=k'mq1Q&7usN!ju1)cL!$C[5(sI3g$0d>m:fUuR(kD^K]"^-(:6#>782Ug2L1'8bH]E>CPh=6pI>aO3?Dgj%+n!O-+\Ls48Q@`-jGF*,8FUK3Cmht/:rYT;Q_K^[M%juA0N``emUEb5K2qWR3t1)f4uZ5#g@<2PL*@aaLR?c\WbEnltP@&%"ucod_bEVVp4jMB?bdS=UkdFAhlKr=R47H92_nhY-QcB![P.G"?sp.Fk1b"K67+,$oF+./W^=2V/?b>m(nWG8$0cfeo8Fs\D![HGs!hu("O7I`n$@^7,u2B_[h0SsP.r&ICq>>7gdlO\A3VPWAhX\p9sjo/^7&grHapjR_^i,9PgSXGLa>+AT-C9$P[QX"UC)3NnhU3SaGW[#8(F!,#3j.<4lVQ#nur6f3sJ(.n,X/'+uO4Jc\Bj6Zb3#C&+Cir]eQ)a\l[;.[mYshDZs85Ej$i\B[oegNpLEArB;'W`=82a$E8\]m:C@]`Rd3cL"RD!O#/kWU+)=BWU;a)<<p?'%NVL(D`e,T?%qU4b$FZ68&<aDhKc*%iKKV]t6GqM\Y.B_RM5@p$!CQt+\m+D/Gb>d"L&"MLj<.fVe6ZQD>0#-,dE77G0%GEkSLT`p"i\!G1eL;J*ZH5iVVCUEkr+=KEW[h/LlP]q.N-H.AY%/LM,QA,]LNa.TQ>ApdId2,W19ADH-m'*OT9QK6,hYS-;n2?m[:RN_Xk)&Z2;G,V:U3PYKJ#X:K6mDp2mIEhcI;p;#5g#<gHXQ^?d#q9n:U8b/keDYE7`(kFWJ4c-AW3qr%Hp5L[;`mm8.7Th^\gG0"NZS5"BglX3t9].b0uqpn>n>.ThaXAO%P0i]k'Apih54ZXMaZD"FP%:JbclMcd7L4I`7Yf`ZFh?)_nIjZPYW0DssFPl#2].aid*[.@?]b>V)!dTPFYHbYjrTI,K:'N$`0TEa;".ofB'Qrq2Bs5_k<YCr1t'Kk!?ZKgsO1N`gLMORd8mN^+Z8]N,@'=t`:m+VpAb=)"5Pi"L4\fYjUD*B%XB>ds6`*BQ3,U5n``Dq.`GHd:M]1-=kSeZ%]Nh/C__b_2aA7YRE$'NH9+"aWpcl">&N50iZcf-E9Ke*Cf];WS)2Lq=FeVRjnnJ#&`>f!bXc"bRgr&_[V'8GO+A@I?kV'/ANjm%N]a]+7X]aaC)Ij,nUK6h1Ri3u/oBSSg2,;REfZuJ,k)\>Y#"n_N^c3DBk?!WG3RCrRg)gODk5Oq#D;#^K+RiRHX4T(pd]/?D;HmoCe>n]'6=R#5#fqGa#YCT&EqksFUs1,DLSbf$M$JEDR7B@e[AWAf%O,$N]Imu/*R6XFgMuYQFi9fFH?cf_1bGeP?;AAfff0bt@iQ"olMSd_o4KJAGL\C#NM-F<n,!ptB#Pu]K.(_^)B[,Q)kf^FmPd:28@'cF?9WRr43QdbW?$rDSnZ:D&ZJmj,\g,L3["o?E@AiB'hb&rD6b?'dW%FI;lG??bb^VdM^jRi#?Q^&T^+5?>=bthFo`[S4>M.8XkU%Xs)]]Z*E;<;MC?d^VO$m%q*LHOpm%u5Z\)6`SSXCPm'B6`B3d;D.ekeH'c9dK#@Xgp<Q3I\sn=HpMR96h+7&K=P(c-KH%_1TS73h!P12>>=B&%X!Ip5>QT8HDo-tPTH&(b8kNNR_g</)5cEQ*_[]UQ\!-WHc\e#m'#)%MhaP((s8e*XHDcJ5qbr%6gHL1qV'7?mLj3a`-ZYO[fQI\r+Rq:Pb2D#O>2o)9_JFD*e"D$l@Pfd\L&lg*lurE%_:&4j5i/(pd-ODGS_kt$)CK$."qX0I,Ek!@J*ooo1[k%DO6@KKs@J8#1(rs#Y*:G=Js1mi9d^uk:!bYH97jB-&-Vh1g_mHs;cc-<O/5G_nKNK)3,b\WM>?="\9Fjo:[0HJ@DaT__F!6eX9p<W6#_8+.?@&CU=S($CQ4!bi<cYmQ5Wf[h?CB=OqoANIoft+f-USFU_j:`CKq=3Lcl0nqF%R-:kMi3KN*=IsF!!!"?%^c3#^\CT4?pn]_j'I;]l#E,^P&8'`9$%;8bkO#X9c:VKOpqBk?nR&>IspM[*XmuU%;+BGYW4j!+PDt[p<UJVP%GRf*=i,M!+:34mGF>H!s9c@K:2E?Ceg&7cV1X\rYY\9!!%Ne!H8!5r\YN0=W5Mk=($)q>^g:J%0-A.!!$Cr5^Ot70X8ILR%6.5a5p7%A,lT0zzzzzzzzzzzzzz!5Pt'R[XNd"pP89"pP89"pP;*a_\VQN=Q!hz!!!"H&gesYWiE'_If'J.=d[:UbXC\5G@MC8`0$I-2]she69J.%mKUnc3L'<L7ViS-CC[m9Xbk`>I*FR!k+[W0R"-1qX;d?p9MDb"\$o9M<F&l>M:n1+ci4l,@hpE0OdU2J+>IIp4An!'#0bUXPk_dYC_$,R%_4X&M:o=bbr1(6U5)[7OPQTnrIofE"KWOU:/"?ec+)MiOI(Ln0/)jR\hD:l"FTP9EtolWkP@&k>b0HaCg4VcRm1uA_^S:#ma.&Q8P=po9*o<(p&$*]OH+j6A&=(Z8N'Q<j2[3;9g`Bu,p\Q-B8JjZ-R"MoN4T+I0b]_>g+;b!k3D;/r*1I)L\`l`>b0HaCg4VcRm1uA_^S:#ma.&+j#(@kk621rrP+!gdLi^$9K4a]ak#%oL0COTWI`!(91\4F/FdBH,fGh5EAo!pAjSUX1[YIkeN&lh\OLBFokP&J3j"7l[X?=XJ**J\;j`[&TcqN99>o>X8K]#Slc+Sk'9d72@Vota\-5FIWe>WrcaXq#0HkjOQjs$[6=*!!;k#*4^g*H/M4\S%k"rhTOK6j!Qu1$uD"D9lH8pTbfc:uoCpQN'I@:;e&[6.H3&*/0<``ASdaE_Npt6p]B87Fi:Pe36N4Uh+$#7oU8F?j>Iu&s8=jo\,8Bm=%bfEJFf"!itc7>JWe!-6!LdAd&k3@n!P#%:/D9LP@r0b>-0_qE4D%W8gK^91cb$U*<``[(bqUF3?cfDbV3JC,]cX?LDHt$QJ:#&'`I6C>%h,+YOR[Z-638AeKNh:Jim\GRIdGmdik#sD!Cd/_740DaH;3cBA)cu.Bl\sQoQC@TlS%'r<]gg-:1d)EEjF@U#ZtG"V61qh[<0t4O#"dXG%e4:c[r8h@;Ucu;WCsX"kAXG04\_js?b[:&.Uqg!jldOnG,@9i=frQCa.I1#P5.=iW3/86n]mFPiW2)[_7-AMDDJBgNn^i8<)Xg?aoRRYVA?`jk8Y9Icp"e1rqcKV6jkh:kA53S'i]+Samsq'ouror8HrE>)<m[VW&kAI=pNrL8JSC&\[PLkHT/62fp8Jt:Mmtdjd[?(,:cq9$N+c^T$Q@J3:<6%8Y4SPKr8B(9dW1!<&tr`T8TWhf**pX$0dqJjA9^X#CGM&S98N9E50paHT@a0@ac/?C?!I'b!^\`lVC=MPFl@m:LTo,k:0(03f@A#5.>8YNkkQEBCstWM(<H-gDf$kp6t",CE+^%g3H+'LuO7JXbkF;X%p3`ef5_-kUJKGl3oB!Wj9Y6<=:[:(YY+tKXq[i<cPX-YJ2Z)7QLE%&,*#:h#>Y`)dR;pY0Q`!j,3R8>>Cf<R8DR!Sk7@8RJ?@,.WmT,[r4$KT2@CK#%bHj(V@-6bEb#febUn$>uYC0-&9Co*n!qJ>eMK9jb1cq8Rsn8`f5I<2!/gNg9XL]"dl=U?.Qp-P*[RVg>4--8[U\K]D3gFaR7F9]boFprFFT;ahUo_cL4XZPe,9`"!1dr%ni&Bi3j"Z^6/WJ<T7eA:=$sn]"YUrnh]9`O^kI3Cn`u6?XNj0&X,.f6Pk2?ildP^VX@FdOtq/[\Sp;1fG3==Bml<A"aq&bjJpleb0u]En;ED<%1US,bpZH^_*XF)j]lr6FEYBDC-.SOQXVG`LEpGq8^nNgGBi?mf>o%8/N-H@H[Vs;\f7iRReo\s3UGPXi`fbo?g)NhX0U2'^.(um\hona*)57Nne$YUcCc[L()fYiUr58Nl&YSE=3]%V=hWki:i<!SrW1lb^TVH)%beODY<c.,,T@HDJ*EKW,YL!)GND8/CKFTdo/\@kh3[/:-I?d#EK$5caK)u-nN5;BCnRo9mUg8o?'SqH*[%Uq:.%rO^aZG/G3]\3MQ6E;\ZA7&oVQAd!>e6q3i>'qC]S1lTlB7^Hf*]0;;mt@p+"h&o_d[WAD5^`L(lI@D,K%IguZ!HP"Jn.j@jA]i@10cP=\_$5=Z=B+5]5A$Y2:3P+11pU"W3+A"1lr\*_afF'IsOq_k-RgrVM:JdIuW:iJja\-a]q#=">IVO`V.HU#UdT#*b7c;g<7D0Zga@)jlUQU`r7-[)6jkaVo-Bp>T'q<mAUSGbB1<0-@@8is6?!`;(BVDTM1Z23IH8+:/88Td"j/E4SPm^N%t"naZsThWX&kf^G<JX=`3GB8)q)lhp?m8M\G)Ho<T>qN?Pl>i0hF2n:\)gH;*gF/t$q+8H(o$QB7eP6!ibn$gn%[s6Gc]UR3n++H#/_i4E!pj1Jn)$+q2;0^OVj++;%tV,N$`,K7VXDSp7lP>k%poh`e!4U2f,=G7:LH[LL-NU>gB:Q-WOgpm*[V?]ft'b_4RTiW-V2>Hd,_kWfbo,U8[^JeI6HBP?!`nD#DKfc8F0;(P^"L7CH.c04in=qD,C+-HFkHMSbu$LUNn!Mj)f]dmGqou(F'Zu)f260ea;3*,h_hYg8*>W&(RI8T$kAlQVetVglNV"7K:B@GcWk-*G)E\7jO>Dr.\ri',-RGNK&ol:&+5l8lS7u/`^S^[u&5-D</1%><TC!9rJV"SImd3eF?&gg1hED,0Lp>W]/>C9PZH<BkT+\o"[*rIs+d4IcGe#Y5NZ:^0>[>L?guR?D=I"@SE,/Fs"5*W4%G]U3Tp,TV*?s9@3D/l,Ap'\FXq$eA%r__S(^W_]^rA\K5B_3;^rnHSZX;W2L`n]o>,RCe.-/XFV^BiO,VAqSGd=K4Se&Pr3p^=F\DoD6/OY]:.QeV[n5(oa/X0kY=^al3i5fWG<N4lYI-qFD%,saB`cIOmY9uJkP(!NOVYbLr%]5r>4neY>FE-gNqtd]CiTaRoIrY]F\7RMo,&ap-R']K@_`W=O$e^a*"`_V%'@DI^B',o;j>:G!$&RX(u0/J($Co>tn6LNlO'VBGf,ldF-toDaHSdV/s5s9T_$VGnF9<:Xp2o\$C8;Ol'0r;#]n%[<:g*LONtS?D_pEN=AlZSn?`b_uoWcW2^q>*tHeh,PM8a`NHL.hH^A(?!=S#X0V8KIUF=&D&_f!d/^/?!SVu?&(%2o&QKIalLR-c!$*giY0(iQ"*@4,)\#VW>BfcY/fLDH/t&qcV3mp4J^4/+e,\kA/t[)bV!e\SS;PDB-o*05\f9rBrQNP<iGa:n]mAu%Q9j\FV@?sGettR^0g'rc`7t:0bfa1BR4HJo9B'&R*`Wo#H)oFBAqhpV"uQHCHb`"^($pd#4:J:RNOUUD45F)afkh:)h:,CAI;-%12TtmL-KU#U^*(Y\jR.<WN+tG`4c7ObQ-$!r\\1]Mi<lTogtLZt)g6)+M_=Or,<Ap=A\<i*lXk#VRMs"gRoOVk`7GPq0puH:$1UQG=Ce/pU!_iQB%Delc]ZA]\'88*1tTm'Y-&o6g<j28B==2?Wo;?b1/kkA`q1X=f$9'F27]/*)c#1GBs)5fX<&@Y.bSf[C90sK^!3]l>&,a;]dn#/B7fic4*NTV(,haBHrW.@-;<P7-I:5@]8J])c0eT>Cl[F`R`TF<a)?i[jD/E*Nbb!4XQ+cC=mo+1W;p!I%%OtAO:Xe-"k$MDk'[+U4&rZ=>k*k.8X>r=h3ef$)%H,66et&lN8(H)qo;epV`&"lWO?S%gss_DWuE#$hq_GRdG>t0Q`+k[]BarRp9JG38pt;rkQePck_dIMTuQ;Mm/3:"IT=EQ?6LAk^%P%*[<^(.W+[$]WGEK$j]46^`a;/`T"92r($hcSh4pOpf[!LQGlolT]Bi5iUjZm/(0Fkom+e%aqP*_Ep9(i$dC5nuam_@+k(H<Bii"h<7[Ygem'rM7&papM.uE_h)Q,X/duf_t^=]i)kl0,'ILN>I-USg)#>&**70;.cGdXtmZrB#rQf?`aVnjIlSh3"C9PXBdSb%LLTQJ,3@qn0.8[]8tf`nFmZ88"u+!f^fB?/dMma1%.(tnc^,+:DN?LMZm]frk_2\d^Jj950%h>)W.A+-[.hlf%h5LfAW_/8O*XeU=C;-dgcg!GQA%SH$3EI2W#^DpN.l8j9o@V]_s%I3/l:E<-A%DJl+=C0V(C\YTcmNP/RrSff;?[.m&*mbpOj_N/5F,#J&Q/ps'-O.3P9![oU]dnT,01IEn2fPKPc0iUEe!=;eQ`cs#0!&a%LO+m6:[4G'B3(>5[5t=+r&?gde)WP?l`T-klD[AL4Ki[>?eXDi:m:Lr_o1d$&cEYpk$B-u#4RRDG<`9LqS;WTiMGj1DHPR[QT!([9UJpk_NKnQ-r_37HHVqPg;]0M[aiFeR/!M$#cR=gpO;+<g0tp3kkdb89llM6AQeq0r5$Z1+'5)$8'lukpLS_H'AAnLARXPC#8dDrU3$dMK10"Am]=GnEO\5=$-9/>];<DFfk"MG+=MS`CB6qHMrjif_(W6l^!ik!n#Dj&DU]pr7i1rDmo7o&RoGCQq*3Me<qs1PO0os%*P\?FnE\u2*P(;KPn7](`mNKZ:u%1lmM+H1k8XQ?@p]&f?,ki@ECi_QX-YYFL)iAO1g?Ip-j`=ll56<R"<)/X;8;b77=`S>)`N!.UN]9ap0?,GXUffBj)#9G<OQ,*m8-lQf`DY-Z%5t[Bq!_;bpo4N-$BUcr@]<iN5II.pcLg5*.HLC)>=."gG=/ERVLk(mT%Z?G[JoV,.ur08H+O2iBoKe6Na]<os$U@iFV,19kBI]Q?"lt4pVG`IDT"5h"W)"2"'UC%X7#G-W_CFdp'@440@PC)`o?sMF^L")K`@oms)B9N?[@<hqpg([)XDf^9KN]ej>Cok(DUD5rQ=<QGgIlek(];I3hX'BRm`n"4(g^3UH0XJ"Ok1o8jLVCH.cphmVUfKV^fj-9CT>"&Ba5OB4UmBT&U!'D\?/DSfhE?7I6]8@"pNf:h]Vim@")G&\T,]afG(A$+DZL'F&[dj[@7qg6`mLZ]22ChVRQmX9(E`:FFO[bhILcE6BS&PqbN[aNCOiK9_XoRGq@J(4'_MIm5d=6B;rI]mqmRX]FXpO.1Ep:e>*19'T6+;o*GO^t5c0"floAsq7@.6RgAq6l&Xeeu1maNb9BG2V@iO5)4QS;Ql]O-\`1^FT6'/!$s^hKf+:qs;oE#2c37:2c?a+PQW9rJ:1+BWE)+ocopjZDX)>0M10<LN;\&h+stg%[\NnU5Q:ZZFm-3[&*/"8U6:hkR-=A*`-!hc1XMJN3E&^/'gBMl3UB0$SLk.B3tGL$bWngY=0m_NBKYH,WkG]BkZ9\C#0AV%'r7#fg_HiO6fR8nVkAte9CcQ@aT<H*B=c[Es\&mC42Q<;&.A"'BEh:_a%:MEG69t6>K)pr+j@-59f%60!<@Za)<Jt8-:5^FcTW/X(>d3]KeM5D7+TQh%#=%ot$$Xb1ZM8dM&T8qC\5G2fa56ROYRQgL21243!^L[9%Q^?0:alig))Zgtes8m],$2-]48#`(7aV<>PO48(Z[BE#cG5I_Zb9[DH5]ed_VCp'XI#<LiHfG7B#^Ct9&sN./,M8[a:)_<<C.USg3gql+"pS/c=JJc+$&n4?2rZlaGG+hkB^G1ijei^qmX7(rQpmG_?rRa_"*r6s"2.6U6P,jThC7""dn34%rBDSrq,LXpJ^)5WVYQDZ^Tduf_p^;Odp=5+t+TqO*Yk:YJD0/_!'8[`(M,W.N>C.HYDrlG`dZq^7JQ&X8P%q3f(+0g48c?[86:cVu5Vq/cB@L!Anfq\h=0Z/bA6.04">NQ-0LSj^%OkXbbGC0fXA1nfZIt,dG`k,4$?Zh?XTAjO/r/,W9:3+(lH*g`.o%Z/[ftTQFg@o=eD`LrJL-AJtBH;'^kT0>*A=uHS48`O(Aol/T[[s2!pU*GXDVKX8dJNQLqfCZ$&*)A1cCpM6KCt"OR&:mc-ek8H-GQkAbuNG*QX)b:(F-t&2]<VrF50OT)d=YSA3/O,@V?]XhLPW-Z=M">qKK&o?-hio1()1k(%gV,\EW6b2i9$+Y%g4bm=N'/F]rX)L@6GelPFEq]T%;UIJ`jQPCSVG`niJcZhi;"fgSt#'g!;.bh%!MfeOknQ'h'eNt`BH(D[br-47%W,5b,oDf"7@8VNqIdkThS]fdi[HB&k3Kn]=;("GalGp+NH;3"")askF)3ig-NJ+J)+8_E_)3STPsAYXEhhO#kQCc`;5SeHE_0h:P#=BTW`Not[>PqA&'kN9IlK;r9t_@:+4>huQgnTI0@iNO8tO[h:=$dP40e_mGjN_Khk\WCmjr.EJi3/8QPQM=_7Q@9p#e\1b=^an;^[[i@*8(DZ)T;WoEkF4WiS\k:5kE@BcF"c"qS>%jP':Vu[gi3+O*p&:1$LVO'jSZm3P#qKeF7rjaQW$s(^2GTIn[1;eFliUh[]=A,_TM2M?X<\oUSAW^:/R88LAH8T<cj)jKb9oX]H*+IC:oe;rP\#,FOG:/M"$pEHK")WN[H!As.^+TQ:J]1^N\kPcM#LrJ9JSaM_a1FcK1-g:fg_^Rp/ukQkT.#0?UOq76.ctcDT%ih+b&pOpY1^OK2NfDuYJkJA@\l_Q7-n/X=SXYHi5Dbg;0<H\i[mpG:U%Z4R=MfT#6Z,9#?k(T`^_:c".]Lq'dQZgZ]J;tDt=m`&k\L*\;,o(S[A7phso'NQPDj.HGDcC@R1:dQ->l($0-UE;L#pA1UTRI3pTXlk?^?g<?8_9SCh:7G5"bT&?eb+m4ITFefZY0$Fobi,_2MQ`>7f]].,M-e4[d2qbJ='EF:iKRDudSJc1.u_>dV65aCf/FLbG3VS!TFl-)]h)e)79Em$dR-iplu<>]=K9)jHe.tPlhf[FfpoXdW2D&\]3^c-@EH]PIJrr7l/@7V<B-Ikqe&QGYVZt%gs0u73@I_la;OB#0pRCr-SnHEhaS^1WJRlJH^Ht*&h6`i4O7^N`bNgU48i$M$VU*+`]CGQZ_"/$>?#o7:<_q$?<Hq#*ZE)tIV;39H(W.)HX@p6V?30*Nt+Y.6g^sF;(Zf94$11mN@?q&%_jG5RL/+"\\sbDWoe&FapTKJp0<HiOnY/0@./0;o>GEWkLhfXg*t*_7i1`IgJN6lJZHs<08')21,1%[+NUg>`&Bm2(68qI_Gb#QBW:Vlb'\mYiEbWO)k$]g2Q:M@oHn40203N9DD^-G(5G`5N$9LlE4OkupBnW!`Y(eQXAD"/a_uUP+5Ar,A/Ds(r%]#\K!9.R9PM6k@a175FX,iCo4+7i1bN)le5ao+jdSuSEmq_p^?4do)OXZo)0g*Prq]i"@<Uilj<qNcB#uYej\rk.Z?OXMW$"$?ZeO6e]tnTIg`3:bOs.6YbJorUT6HlR*TM5Bl&/h;>na:)VDu6;OcW_[`+t:\hL!FgX8%;5G7Tfcg#SNh5B>1!H/?=Y#G(IH/!qr=8:.f+X:`Y-W3IK%,"LHKVUEB;a@E:moPi,0*)UtQ$n'p;ac"]NQlEsaRc5,.2=96jL&"45=N2Y`(R8Phq47KcD(OS@G39%96lIYm$an9gbE"7Rh_sOf^DQc$p<naI7I<ZAZa)5RqR>NT4'S/D3JaiMbt$Wd1jU5?RWID9;He:5jiMZ#-+@6hjS:,Al_nLRN6@U0MihMN)muM.:Mq5aqVkdHBl^/s#pd[M'GdCh7D:b'5#XOP@.Ch,"r5G\i+8R2j%]`h;,$XBVgmlL<*$#Sfb"=eTM3#DB>/h@7/su*G'.,mdi!QYo)uF]apYO43c`\"3e+S3M/agg-J;!`8dYo%5jCs6$6sD+kaX>JcR?dnV;V[1EPFNq*JV!oSC9C<q+*'TL4t?"VnQdYJR(l3^0S>.gSJV)<H\qb?0YaUX$dD/Kj[>g1*eOE[F%cdU7`VBhc@1Q#%qT/bE-eb(0<0\7Jeq81)tJ43:6NM9f0K/_L=*_]=.4Z/p4>>>-?"[Zf&K$&%&7g@-!YQ;NR6-Sm>N%;NgI/mM*8B,P"_)b,"36g"Gea_0/?(?ql7/EO8=/.`",j$'*_S,JF;\U2-<!?'jZ2DMSNkPH.>s?LM7A?%+FMY9_H_1:eXc%E^3C#eIGEmCIpk$OZIrI*S^1%c3(:$Sp(,dCAV8;,C>"RZNbnNf!Mta+L_F,+2hc9L\?]GDT;6`h*ggJ#SsnA=#C4Ng[E8d++Cl^Y6Ggqou\'JS'7/32`;<CJ0QVU0`UCB,--W`VWQB_V109iX_'IOMc::$`!kNEL#AMML@,K75rT<G9\Ufh\bfO,OUGikB^Fd.Ls>")u7VUVnI-^C1;V_I-mP1>;cHI<6bDWBBD.Z27:%R[17LF`sWe.+bZ<t&1&f4^nZF(;(eREJc["cLl)EjW9Ebt:_45T)`JMBhaulY<s8mA+J$aCm`b$@-\-d9@%)2uI65cQ;Q&C#Usn5aq`atmn'g*L[s!oT7*Z:ViFMUYo>m9b+R3iYr8[WW\h1KsIWO._Wb.A0-0s^tF)3S$(T+VtjH*r\p\$^<?G[K+q*/'(5;f9mlGYQT%9$k6bFcf;nLJ_3=``[f0<oWL[CQkQM(PoXI:e8d!pBNsjOY?`=cn/h$pQMFXfo.C^:9tnXRZeGMq[OXbJbFojcTkN]"a.SpWhpP.p-nE]Y:Nk,<k7G[uWInK)"3)DPD!IH``pA)\e1,\j%Bf'`4tg]Qj5j3NB:9qP\"0JBq\kM:Winmi]NZ&L\sk`trcn6^Z7qA4,6QL0JD6:6964kG7)u7?aIQ+?ecI%^PZ]FsA;XVKK!mnom*<:<,f*eVVuMW;cV:<,\t`,7?-(Rrh-%>N#JGZ_j^>Wi#I$4SKOMp`)i,C/N(<.LV0+QSqlm.hange],6]EZsUlZ+R'D\bu-Lm$rERU]Xh"Y(\R$40kM,[F@`oF3apQZ;ihn`u,m%BccClS06)FDMJ-9Q?buuS@]V4VMa9kLAJ*1UhJ)8>:s6spF2N)/N8<X$eClBMSrZ<9Ptjq)i_h'=,Eb(K(^`1qZQ#DVti9+32Y0)]C^8+Gt+ksOa?!7EIiAZcado!7_pcrE#Vm-b="Etp,3Zak,P&7grT\,3-05=jn@>Y`kJl_jLf:Fqsn6(8(Q&sqFa`Y@>F0Em4Q*oitE,n5oJOZW6P_qf*;,EPSka'_)Td!ZYk0I86r?4HLpHoFUO^,Y*@OZCTf$&o\iG%[Ra\!Vr)su3'4mf>YZl:5/+eq81qu%Pk>l:m[J!-adLQ>FF%e^`UkjefeVYr7f[jB0M[b4L?CY=NkNlmZW.3.#t'G'c\"nh&]kKZ'q/V*#:$3<*"DnCHSBJ=Ci0Hbj\o0+p6j*::Ma93%b+fH?@EqG:RWiN.UF3%ZbYVNgQ).#L@i2U6c<WkK96>&6a*4i`Ld(T%"GE*ZTjL5msN\.Mn/j1d=Ek%daN=L7W(<^3qM6!bP&M=Ks@WWr-q1.O0;pK&Q1JMQNnaJ+6&`)SjeE14RkE$9#rPt;KTRd6'c?!'/(Fh*-Et&?(G6J?(ViI(4G12*OS^kHi$(\M2UK_Df>Xg(k2!D)`>oBAY0JA4*.J#6[_hcJZt@$Ml@bBF7hrZn[esaW2'Qs`nX0EEl[%nhR9jNZ6!_/IWDu$qW#nAVf2K^njoF5=R,li78;&6>B5Q8HT1?3.2T8=iKnagH/o$,.QW`9rU,s<hU2Rs;I1j,FOT@&,P_[]\h'AM#hfUuoVWjXKFH[Npq!5up2SS[l3$LOh+1csOclVN[_0jM7UsPY4/g9E2'TB'\#lLdSA4K9eb251O>k]R3+O7?l][S/,V=UA`U2p?/_!J!jm\1SEq^)_01j)[EEr@X1<%`J<^/dV6l^=24ZTAsQ':=!GiOf7)-OL'd^,O8&)Xl^llT6+W(K;L:Z<C7DjhCu:BJTD0eU49;3r(n:5C8RlP-HSA!VqI2ZAPIg$'ZodKQ3iT!rj/h$tcsCe2ZpGVu!j'(iQ-ksYZ]DL^J;#!itu53ML6`PoDCorig<DX".DNZgLJVgu^=X#FJt#:q,:IcoUSB9?t)W?h?&[FBGFZ.(t?T^:o7E`s'0VdB<b-"sE&JaWcJ1b^b$8nsQ=`Cjo_d]Ic?jN:[W+!"QXIGh5CWMcQQUn]`^5Xnhkq<_,d\OA]\Dc8L+^V!k(6$j\&H5LItcT\d>]Huk!7rn?Y_M_q33QBphs0dC%[ZCs31PT+UA[T!s<b#-!e2$Q_[23lTSu2@der+03RoY9fS<cAQbPkal;q^QGjG@iTXDo_pZef?6DP8Zj+23p37n2dW-WuL*lJC=k0($G@nQOV"m/*,:aYJ?9Aj_j"H-oK`ql4o-K;TS9CL*m8DpcU3PImLUjlrG7CVnC[/UmTh*48+(/UB-mbPR<W<+jY<j1dgXD9b>RIXu;0h57WtCPN[`]sd(19aacVP<-ZG9Y[(X6]1D*b,qQ`idJ9Rh./LEIJm)Gof;<X2e6]bVu2^JHn[OA4LtG?n4r]M):heMNXo7'-6anBjEZ%q.<WmpMFq'PQg5$^>]Q*9Rlsnn9o_Fq%)^'-G]GW^MS+E4pXA1Ig&Ao_q6r,qS5Ye0<u$^5/lFpL,4djAmak)\+btYu+s#>38+'*kF%<fTa8)bHD]`(7-$(;$hT"&b$7!Gr>o(]&EeY7'mQ!;Y\K/Cj<r;ks.%)QS*nGF^9r*j@_B]_-ql(q\%k`+=:qsD2%f!AkR2e:XV+o4<I_)7cFj.aX[d%c@E=Ab14S.e5"`?hK<]@_'EcA:.c0!'+ZUVbbDY.ld='aZ9pA4-@f095R?WXNRHeR1K5BH-H6?K&8='O]@?"s+0hBpj@QJ(gEqQM4-3,)Tt18Dr)kJurr-SM<fM@?eaIY+?!eK@F%^5hdn53p5O9u0u9Y?ai8HobqlfIuf<*Ok`GU-Tm8FCU6Yk?bRTS+S.bnG'+Y^Y_[U]7&_UPO.kLnQX+Woj2\hm5K(/rJ+I's5X(tZXu?I4j7]M`igUP4[[LNMuX4&o:9++oWt.,d4<fs'1dTo]P)&TB/np6a=%dcggF<Zp!3PEUiUWE`j=HUJ#(o8IembIh]VT"jG$(AkeDMJHloh?q7<N3_Ul2F7$)2[oll:Yq8]IAlq'`prT7O<mbrk/n',Ju^3`6dij8B?F:IUR,QDu.*Hu7=4T2F,FRnW?AML",Hh%Aq5Q#ug8$Q.R]-6!_O]t`;a8_t\F182LFJ3^@F6/ksT*8P6b;tX>?Sd)SGVF0hEMK?erG5kDr7NHOH*7R4hS"8X,sF$LQWl=QntKp3_\,itgIpt,#n0&mW3NtF1@oHe<;>pc?e$tl'`EKB/BZgsW%5N'0J"^7nrq*SO-3tH!ok=;2_$j<md(HGR8hP[gY;8p;J]b5mBTJd;M%nYDC$74@s`R7>V;omD2h>?MphW5liNNulf0bW.,*cW<R3<='iVk;]iKOMg=(d7GuJkEc'+`jjP)d#JZ!FNINWjd:RC%dl_kE^j[;N[IibLP%EThW3(0<lH/o2gQ9P.Vh_MJ/#N$b]G-5'-Q12:YDC@lD7u]k8[.@]p)nDeOp[eC4eQ5ASaS3&@?B<biE0;i8CgIpE;;]pY8Bhj<adIb7^%Q$mp2pb]lSbW*G#*Qp[lhjcA_kr0lJBgD\..L+k>u\pXT)43q,R"P=;dZ6YJ5g[hpC-SC--PIo0l/&3H(&oGKf[PhPOr59>p/I*XNXp8UjhYE]UtGQ/''HjBf\(SWZ_5:Zk`b[b'[*f'R_iGuNseTJan:E\$8#iaUZhkPqnR2-%E*(@0qYn"?dH-iS?r/+;k>a\Ik8e9-l5J]jH]9t`],0<W8bFWIi0a"LMPWD50)C.`6c;r*=te1@fNYBZ\$IF6Se5CP7g1An@:.QDD'!md'p*<n96Z=@^MAbQ(H:#qVcr3P-K4eB.J)/Z@qd+'ZN<0Hm^Qc/ksFjQHONNI90Kl#tD1#/KRX1bu+Wp]7TA=O+6GEskIL$[U(;;[#uZsh6RKD]H20DhBkFuMR[*fRc,[VI@tT,/T9);_FMHK=gFrL8/Gl@2%/Dl)keZ;]HF)Q0,Bm4B&%@G@`10>R&OU"qJEl20a5]BNVJ>+L'eBZhUUPOP`Kf8A:.kZcaUL!fm8(PmJth6*o.H$QGLq5<ngq]agdUb3J?f,L;(?$03nI\t&"M[eFQ?=,oPI%VA5A2pP+ri*0fASQU[`.L\B7;I'`9=U<od6tIHX"cPRf2fR%\+#m5C7=@c5&jGUFIk%n_BoVmWUYc#n*Os$)+id^qG5afnO6*s2`%/^N)Q)u=33pI6W%mJ6"dk5?@giEe+;j/NLW*0HXamGcI*fc8,VqPTon-$WT/pHK-0>!17]QK"R<UR8enf;7pVX\XsmAq#)UjZn1O+lG3Xlf,9uoc-]>oUFn1i$a%Xc!CN",C9\E"k[Hr]e>lE4ba*:dqQ/(.gSImXOK9<<3;WkAT9s[>UcQ>pBl6ni35EWXmXn>J68u2nr`FLm7f?hgudQ_iMjkCPr[D'"!W0Pt4V5<fp"uuk6c5gug*Tf!<C!F81I.bG-ZXrOo4(Y3dL80aE3)B9O6&j4)qsQb*g`[oOYDRX&e&AT*Q>"X#0AY8)h=.qnnBJ?oIhbcVVNO__qNFaZl-Jrt%gP"\1[?b+Vi5CL_hj?'(S-L`UuD-pWBs&$3RRK&EUA.NTP&KQj#kC2'oh!V>bTFA@&.3df^)7LV]Lfh:O$5@^?>M+]M%%ljTk'Hl_R+T<`MB`p[P,%43/K5hN?Qjm<t05Ze[o+2/J.CrpnAD^DQc"S[lN3H^"1&r5[QkhkD*<EAGmro%[a4?E'-1eYUk\e:WlLad"aD<@Rh$V8?S[Pt_c>'/hJ))LX=1?O'd6?cZSNp"H,>7(-_j(cg?\dI@-Q>ZBX<oV.(s/Ia#j8&Cu1VS00\F`gL4WQXb"S#TgB*K/WuWM$Qbh<d#'JRPg'fi@DSe:WlTq=VEa*@4L!7RffOL.)?>\XQ_kQ>+#ShYk/Qm)6juEh*/kpKMIlnHX!%;+V'pNOb<j*??0s:\\geQ@b?OK@++/1@ea`L2W;/n@r;cA]]S52r5%tYi=lI`jpOnFV]+RnBe3H-LO;;M=+RXk1#hKhD"uEB/_]]9]!KJo%:(Wm+h5#eA&kD\$YOL-ct_7WHeLV4]^2=-8tKZ2=E:C=#"IZeM3$B_FU[q)lO3QW9M,q+bpO'$B=Y,8fNo4^D1&t9=B>nNM/QR$00$q)fmO_R[T[kH?qc(r:o(dm7mC(pA$Ah?#'.K6UXgLCPRTSqQ]%W\+ej^mi1GuH].;!iIRM&e+W'ST=St&mTW\^k).dRs**lOZI)ME/FhZE\t9.l0(Fr!2.+c+h32CCL>J>DQXS-E?t)L\;tDUDEYY>R?QI$4/rZT0["6s#Kpj&&'lqs"YL&4k(s.EM^YeS]=(:;VqF9$J0Q,+F0t3=J]=Y\]Z]k:iBV<r'kPr3<5d2t#0-Hto)TE]lSsjj@OK03Uq!&\cEFC-CU(,V,0@]XPW0"n$I>);"_+;9ua>sCBNB&r[<jKu^ChOZ$5lM^<=Ok'7FTX6X5d#]KfYrQ,</WY2)no.tK;1aC)tXj`?QY4`efa8a(cUU4Qs7\`f\"j,eO=om1f.uOo7,V.+P<&")%b0t%:]iq:X-K[aAn0;I!#jm\1j(\d0=@'(M\88<6/L#^-^lMK9;*%IE;]R`nVJR/(s&j2Dg@M+TIEYXD2(W\cJ-<+BQB6m,GlQW^Rl*%:?'u_,2A2%JgFV$6P4[EF[:R\Wpto4[%jRFEVgo"1?-JrZe-BS]91.(Pq:+L9\bJ(UOe%"1a;<K<L;D'Gj5:/_WI,pd.[cNX@d_crXn^<oElU`f2u;k#SbgaJ."1J.=Pk$d_i1!*f6`(e/LR,h8W^jo]@Ekb,,@6`_b>;ZK0e0o(oDq9gR6+oBF.c_#CjBYM8">[GcUhuG`k?!J4<[437pdt=D^#Smh7j>D^UXerLcI+<H65Qeh,RK"\V5d3O8K7XMFI']NmiH^aj\Va7:YE!$*(Ih:Sg-BNM6;7uN$9;q<$4XuaEuK*Jg"H[da;;B?1_=Jbq2^+9"<73"@GYQ\j-pL+%aV`qaAn0;I!#jm\1j(\d0=@'(M\88<6/JM<bO1)R+%Eiak#+n8&!&mTn-U(b^U=;+P>&%%.c(R)W,ApF*QPQ5d"SGi2^?)`J'FRM`+BN^/3:2UI#G0YX3t^_jn^d9"*<%61RJ4$Om4XAH&>H"2T_@A=.QYd.h3?T>U7Q"*,-O#%&Cg-n^IS>-rk7n:d;P*#3MHJ/&u])s0!>:pQ419tesU">K0SIJuS=klGF9!I>(m?jg<^_^I-rUfnJ^HpCC:*V:(eLfFUo$F:QNYM!9(.+qc.#$Z32*r00kHrdi]S5WHhVXKG/a_Nk7]jp.E6onhFX87reC5Xr2K,XTXRd(oA%U7I+"1cPi^,h!G>Sp&?.&[S^W9M,q+c!i?D$I>-)pjtc@K'Oj$[!t-,5M=Kl:&IB1Z&8s%<)LfTVoR+[d_g%N8h]FW^T4u#LrD(W/sBJ.TfW:h%4hUrdqau\-(?%Mua`GEP\Y-\hX>taqh]PL/D1m8[TtF%:?'u_,2A2^^=o_E0nh>#2Ee-*Opi6$ucCeTVoR+[d_g%N8h]FW^T4u#LrD(W/sBJ.TfW"]56WBi%>u:^bm*A^dVX9Yc<VaN'OPOKs-MF'Gj5:/IH71(M\88<6-5e6CS#2AM^4bGM-p?Y2L3"SA>Bm.<'ehI!#jm\1j(\;,Hib2*EoKj:J@!eeI$pRlN.3bD&)t%EB<)&Ju=clCodROK33VX(*!cKoo>mK%f^JRN<F`EX8bnAcR&.b\=ju2V`k!35tr2Duk7l*+0.]*Q'9XN20Vke9jMU%upuW`2\DH"h;`fc3s'Gi=9,10a:kc`W`ESkfO1l.U2]5(e/LR,h8W^2LM3q#=jIf!\:Vq^g/j>)K;#PGMjC"0u+Z3J=ZfIfYU_10T$5_W>5Xp+&LF=UI#HqWaJO%m]r8PK"Gj/"4qLN!>g<,_5]-!1'5#/(;;ha;-Xr0[4%s_?`<5*;'C_1$>fudQd)$)gh"AD\;"K%E!@,OVn`>AnC97Pike6d77#0'eF_[tO@-*!=Asa^D!&Cg/fX5o2&p,A7:9B)Wf+$=5d%DHYE!$*(Ih:S$>RHpC3jhua<@cSRfV;U1T(7tfl.2!i>;Ze_$0$OE.BNfFUY%T0Tp0J;"F]F4ZFqP&??/h']:U53A7ncL-'>``u&b-(`0:=U+7IMX)-aq@i31=O]76jg@0fb*ZPo8#cuBb!-d,?Bu""4gjs6#`W0Xj!I>(m?jg<^_^I-rUfnJ^HpCC:NX@ebWe*)3\BAL0$gt=Z%U?n+#$_;N"fo5uap@&X>PRJ#7WDi^eY8]pI%dDB7thoa/$p20>rHaBE0h#Xi#7V1^_pC-ScT/L_H4c3M@1Z.('QQ;:t(&l64U9#?qg[iZC1;>o.F5bJ,o8^YMm^7[!?8LM`LA\%@G-d(L?3.g33U=Pq@B+%&:<dP%mij)no.t6O/$n*!.Xt)9ajR5\'MBR<R?BL"Zne=b&<<^S%L?!H8IZ\1j(\<Bd(Q#=jIZ//Wu[bKRS7cp4]fiu/CaVAaD.#FEGhMlp+5J6W8uY_rl6W>9?D2LM3q#=jIf2IM4Cj+]Q'\BDmu(L46GB5i>d:OrW+(j9n-,h8oB5YVcL$6`M*"HaMUA`HnqY2L45^r79u)HM".Q*CA#$BAO2(Ih:Sg-BNM6;7uN$9;q<$4XuaEuK"aNFsoSA-(!6rdp^C#J`(\ike6d<V_06*ZPn]Y[@_\Y;qh`q#CBpz!!'fY@1FTQ(-n8<cE?u/J10=a/jN3`")Qqs@i31=O]76jRLc@]TnC'G%^E$A9`YZ2"dEgc"7k=di!_5':OrUaiN$H*`J'FRMh7B.W9L".^-W=7WaJO%$t0=(Cchgjh\b8[/jN3`")Qqs@i31=O]76jRLc@]TnC'G%^E$A9`YZ2"dEgc"7k=di!_5':OrUaiN$H*`J'FRMh7B.W9L".^-W=7WaJO%$t0=(Cchgjh\b8[/jN3`")Qqs@i31=O]76jRLc@]TnC'G%^E$A9`YZ2"dEgc"7k=di!_5':OrUaiN$H*`J'FRMh7B.W9L".^-W=7WaJO%$t0=(Cchgjh\b8[/jN3`")Qqs@i31=O]76jRLc@]TnC'G%^E$A9`YZ2"dEg?1K&F:=(kpT`c0\Vr$V>6;YG@fXV=@^]_>YZl;\eZW#b>Q*q/89'&)*Nm78`'7'PI&3m8h$Z8c)sZY8r_:,Tp2LJ*[h8X&82QBjup;B@-(:TRKCqjjae'/$HX2(#ubjC9tkP#h2Mkq:YmodWuIj[:&HiSX]?q!&\cEQsTFq4+j,WHVPCeA+-%HJNA9n)I1^qQ:On?n5QSe1ga,0aCAo7Ha=-9]IB-,@.27c479!";`Qt\+RIo>j_KZ@ViJs')c`ugFX.sKE?MHi*5kHh;ML1_)(]pSTiZ</<X;$X/7f1oi]#jl+f6pZ60u1\bXTQBEMgIp3DK76m=^dkPj!%0=nkShS1E!N$3"%b4o;elUGr`Bh2%Dd*\-=_mK0g$C,6:M9a29BTI.s:N0%_cCn1Q`45Uu;#s9IN#B^iC:bq\o.22Wk"G\>4,;b<2O-b,C;(eR]Uc,u(cQ3[SIbW=2PrBkBS\;fM4UGiH(PBY)psFT?6K*M"72l#S*ZN/#hDnZ0dVupi;%h)6M9D:9K]7Ce^rCG8S-cFDcJSQ,N&Q+q!&\cEUgeS@i?`Z0QrjVIbe@E]5Ya=U09A$qC4Kj[)g8,j5RF'o8Il+]h`k,\],>FMrrFL4+8]n;TO'gRY$r"2B/,-4HjN72>RbYZ@,5T"?Tj(jWk2Tkou%Cd>lGap.d=W,KBT3e=87Hm7/&OMg=."\KOF8[a>SZImC(6XSLAF0f`=/A:p'4]0X_+cE96QHJ'lk$I/#]W47<'>:af:'M2gIGNtD2F_><jlTuO0O`soNce%]5HN&uIP<J7[cXW^4Nt&Oe+8;b%2A2Xfr)RW[e>p@&dsB8CYU<eW0mVgRZ,A11joon^/X`a-Aj]FKcloK0:d5F$rGRmDHAFs%(U"j+f<3JcCt&5i5hU*8@_Jg1,&qX0)gkA(=cDPt:($K4?fg_8jQ[]W\8@15McRa"itUPtS-6QQr1qUNM6hEq[E:ekaNCa1AG&>!Pl*!EaqBUs'B@n%'$5d:]/pB(@c,hnDRJnLDJo=^#Ar<Go9;4Q:3bSf0Q(Dr,\h`#M('O7r-sHRcDHTskd*?)>>JB>huI!Vl53!1Ype:m`W:gWNTk;76h/@^R:E>_UZf'.rH!H[at@GQQ[&:\luI9+W>qT@i$2ULan05.#1LE4jWhI^1kR*PA=JdgOusb^(=cd_Ns8)1.=)cpk\785VS/2WbOSm%qa\,5T[\qoI8G$HB\6%q$mj[!N@DWF?g`*CKUVK@9"%n"7;HiOe"lfbA2$Vro9jSq?.E,?Q2a_Mep,A<cP6I6#EAD[M)f&O]8rD'0?1sV#8c]#.bQYNebO!9:AbnSq)Z!!m,J)RETl*>eUJS8jWB4Prr)=.2[FH"dIaL2I>6b\UceH#jb86Tc_FI]G$H_AjaS\Rr^(m>j_0;7=ILn]S'=;,J"qu"l_1ZA@kF=\qVj-D;g$W6ptS(`j)%fhS`Y]>$(tfr(33.^0(cg/0VTUgobW>i*Q)nYa`C,*qIm'bpt/fI`jE?o_0-=c+#GDQog$Km9g@<%;\Z!#)i#+DV8>T<L@k?P552OOh<S%.]FfeND"N!=eWAk+FOPk;@\b2K][SUJMkJ))U+h]T1B/#]*Uh)Z\$p@L.+osE@T6JKj"=&N4$XNq"7P7*`J9A:jK'^B"QYYMTc'lD(*<:E<CPXt2T2i[=#&2JCn+uB582a*l=ue6VL2Lh\;RL@3g'FldDotUV+N&Ar2;WfH-?"UlB)sY/)AP&o1JU6oesi4etb.&W%59:IpV)V[Dg3VVF4;tKs-Cc)>`V5m@_J,9pBJd"3p8L/3RQ]J-0WHX(*!c`DEknd*S%oN8joOA7L"V_,*8B:)d\;+%6X:f7BZ88!iH;5.+GIq`;mA7RWPYoHAX!C7I,N%d5_+bUuh<B8:a"]\bWC\3sP#&!o\?^TNtBhPmM:]h5s#I!h#T,d;@[4a+#h*.,_.9u.5aS#u^K:T\j=D8f$9qh_L&g[+m5rE?Lp1uF^k3&i4pq%sQalsn%aOlTX'!&8j#IPYW6I41#7qSliVVKF,Qb1m7LP\_7Tj*KgD%HICt(6/sp4d7>le0F"B2iEr&mne5`7c09_nK73=e[,H-A%]lT9rh,(c^,'rIA1H3W=8Yc<F_@r1J5;c1&,Mc=kRMX",7H_WJAS6:T[X`*BN.@5!kNNb/=6p[#7%#Td^WbSiKA]oAD":5fna3e2&-ZO.qV5*1&XWW1%tdK07IJ0%:uW?*`]95JFMNbJA@ufR$t'nofBKeCJW:NPk;p1JcF(h("UIi`NK899)"`gRb7Rq,Dj`A^Tf(-F,V3N0-Z0B+l[_.UlXG-VChh^/3?+3nl2$]"%!DFV4t-Y:@Ok9ingX/s5qs4e@&iFlNIEPAB:rjrLALOG@fFRN+JU`PM6ha`8^!Z)UPY/R#a8`^U[8:-$_tRZWX):[b/e8;oU66*SG$RUPm>PQ&Zn<Fr8T.dD:&`f1C`1fSL3?%h23:HPKe*t1b"g4?usJFT5:3ktd)nC97Pi\L<^)tQ$S/(p<IAhXqJa&j+PW8[AP*\DA-XOU+MUCBd9]";eN%lZ&m,fZGhTC.>(IXR^;OVaY26L2PU,obl+<Rl(uRjEMb.L+CUZJeQ?5]j(q3Q>e@AhMc$>'4Jt/qMi0Vk*2g-/1BT7;Hk/c%PnQ"W/Prq(N"G-u3_eFE6)`7m<Z@*fc\kJ%qC-L7%s;-LA^]Qo#`q9"#mcqVMcGH8Dfk)1AKArB"$VYbpaIE7BA:?LUeQ-EFaBOaeKos/5F2T&G9g\p"q)PL)asC#;!oC+h;"6=g%?0]K9j')nBgp"+iD91O>NpYun[9Y@\hB]te8BKf/t,oa-do7DaHW#R7Y=gC&W=L&OVSVi_inT2>hFcBelX$OabRSR'j=)?1KS%9>P^TUIJqF6B(_$r2kq>>%V=b6K]]2H]?75d&I&T<oOjj?hditE`.W]K!bWaqU_$WToQo?)IbP@"b@lL+SOdXO3"UpK@*]o+VW<\L]ccD/+W4+5;mC*Ph*Tb\U(QTjV'c_3:QKUsV"-0)8/lH.WGHGSth!nZ(KK,Q<r:`/H&;Kh]lh5j\S<DS7$X3U!'2V6'SF\K1\2pr@R\Es"%OShBH]4_F\p;*tDUE.FSFgLh,'`nlLKs-MF'US&1)rinC0A.3"AhXqb2GYE;LJ/aX%6eF7/5khXC8(bKD*01gV+NZBLD,CgRtoC0gJ.9*eW;%^]]dB^'T8sFN/Ihn%))dRY\%KrVlK]mpX_%u.UNF^n@ma?c>!\E<jGRu?+pRZXn__iR5Oi(bt,ShF'<]Us"dVADaK,@?gdpEI)k5JaY6>-o:Z>g;)LQHF1:%oR,9\s,L!m?qI\"]'^f+u^SebU:I2%<+/MtdF"bPP,km$IQY_.-]k%!r=gColYu[SWH1[fbd*]TJWGX#&rqk<1D6/`\ld<.ir@XS:A"TnP)^ZX+GqeX-`+Nii2>oZVc*VE&U&5?Z.+s^$?s_3-.0pMHL?fn>*,X$WDm03'e_p%9[^,d9dtYj[q6-ekF;KX-=(0U,YDu1B+g2,-bT#*'&,bcQ>co$o&;0FIH]%OXl@3Nd`/Wt:h&5n+],Q6?N%(BHoT/4\$=(%#kD\h[U'Ql@i^L&>/F!RP,`CGjP\aObgEXSs>HTmnCUE+D1\M(o%MpWc'pmL`*Qk3rfFaaI"pqpp2)`\6ntD[aa0/JUGmMfYZ5_%u<&OJ$6F&Y7>XL1c9/B]dWB8Q2<_=PD#DR$R-+6*be<^cG%MdYfW(Y,]9"(.EUoK=Hg&GO8QS`@\-"b]IHm$F7^=?05#WTU8^,h!G>c*";NH#r258_N;2M7]JN&KsM(c6LPSNa`AMHlmTLZ+*hi]($)_+5<YLQ>/iP@+(7W'7Vuoo@6S"]+Zj]55^[*,A<7$%K[k:hd:HSN.jRcIAV\XJTCc,ocOT@r\l/>bs+'4W):Se7_44qhcD^h1Tsaqg!ikpIt\"3=PMMl-IR^PiUs_,?T(iep^+\84KZ=4kj-:pY.\amIT"\Pd.n=f8\p&dY!Yk50=NXFUpsALb_b;b_GX"(%L;(U#5<SW3<OLO'hk36SI`3+1<V.IDuN3[$i/t\W-1&255e2Z=u2e/]qQR`]?\t`e`&CK/(+#.LhVYJ=0*CPXc.HV&ib!-kqS.&m8>*r`do_/[kiK(+rba>LV3iIC'5(^QbSu\N>V;,gJTI'DjM&,`BJda#AkZG(PuS>8-UTfks3KC!MYq-*LW!9/F5aYGt09q*CID:jjcgh<ud*8XuX3%etlmhIWH'@]3$0>q<2oM1m/<T$*tA8,rJDS.BQTMBo>WcCTA\aDLQ$N&sd#*CAhrF5,8_rk:/&W(1macZq84o(C$BeX_bQ<f.C%lMBumeC-^jb$4#?rTMo_&%c+X]u?^VRup7Ag=*@`3RdHRdLZ1W4e"@l"3p*2F&,pbhuI!Vl53!1Z2",,VK%.Fk=:orAiLLRa&pe\dHO#Es18X>D?>A[,5'j\ZdPDUWPgK@:QCWO+%/fh48_:ZDY^F:jX`Sh0t3=*RVd-*rL=%763iYI_6b-Z74o?Sn8'Biont'VM5qsq2WjO4h3AY[JNT1Dann>.kit&%T-#dr^,$XcP2(Fs4?$I^/"60CcR&S%ht3;4J(^*'F8./YHSM]Cc%Vj%$i:He?XNh5og,S-Hr@`M)ERCiaqK8&T%bsMg/#D'.!P=K5:C%AFt!@96e@C"LC()[T@!U1$+]0?6*b['<esJ9Cg,'`;'6g8rC\I4JYuS12Lj.ii@Z''5?QJ"`sQbi(SI\A!OhLJ0oY,/8Et:Rb3BqDDs3)fPrr(/&=E'k+7c$5e9jMU%it9WEem^!CC4GT/"gG5)3Fm<!,$6OH3tX"$XXpl-n^ISc@Gb8?%P0Y`@gRrY0q0,:HQes*B_i!5YVb0oG)D&<<[.F1CP.kG)L4/?h<C$/3q=s1LNI%"uq5Ccr8j&>PRJ#7WDi^eY8`!")</GTWaGEX=@=N!(0ih,ob0\r&4g>K+$%)huI!Vl53!1@3jBtT]Q>kHK_$*O@-*!=Ao2e=90]ec[bpP"uq5Ccr8j&>PRJ#7WDi^eY8`!")</GTWaGEX=@=N!(0ih,ob0\r&4g>K+$%)huI!Vl53!1@3jBtT]Q>kHK_$*O@-*!=Ao2e=90]ec[bpP"uq5Ccr8j&>PRJ#7WDi^eY8`!")</GTWaGEX=@=N!(0ih,ob0\r&4g>K+$%)huI!Vl53!1@3jBtT]Q>kHK_$*O@-*!=Ao2e=90]ec[bpP"uq5Ccr8j&>PRJ#7WDi^eY8`!")</GTWaGEX=@=N!(0ih,ob0\r&4g>K+$%)huI!Vl53!1@3jBtT]Q>kHK_$*O@-*!=Ao2e=90]ec[bpP#.$,.ic'InU<O30e_D-UUc_9/SlhoMk0rGsd<TAqN<-Jg!g<ugM#!:R$HQXpJ1Z.k%&:>"V5elL7]uIa9elTRVcJ"S#MTW<Mj<0ig33_./ji>D*V:(eLe4KN0i3%)T9mVb,dJ)0mS>G714Aj;ms6&Dk9:PmgUZ]B.f)R4;;HD2rD/03^<N,4XlEd_+9kHAlsJf6kTgpj"=3+'WkZ6jpVNqVhgD)-iu*sY`aEhAkfXI?QNhB6>Fj7tb/mLW.G:$0*d$_'GsYZ+k-o_LE;gZuI#;A6j=iR/(;;ha;-YrWRZZ0&aT8,)2DuTmVj2'Jq/q1\mD9T7Z@*6[dmF@gKcFREBeip/jWk2TkopM6d>lGap.d=W,@>XkG<YM?fU1AHU*778,^P@AjaB%gkf,hNg+2\W?)BHGn&Z(SMaDI+8kl(.+6Vo#1B#F,g?#qT<P<<7:pTU"aF@\R32:B'-*rlmCab/P3eS4XlGb>SeHn1DrJ-"`Dj5N>S2Vh.m\PY*@\=uXQ\S*WOa-YVluI9+W?d8Gna73M!M8`Im`n.MfJb^t>HKF/S-6QQr1qUNM6hEq[E:dMGE&oeDT$j&M+$@a]JfPRm\1TjJL25!VZqHmkZB-;@UnGg=?B?*<'4;d%[S5ZOs\@BWP^a.mbI&<\'-9XIpca$SR/Uas53]m_\241%qA9g$pW]^F)_g1cmj5U-Wf3(a)0o86%#ZAIaD:MEc`!eA.a%NW'Pi4jd,-[.g$c!$XXpl-n^t<0DS*?,OZ=0$[)(u.+pG0-)Y:CPHp?6*M?s?*h]Bc%f-Mm`.ZT-UM;C%b5\D)A]@rWHEINu3N1I<]aGS-mOM1ab48cAl&gGC*H/XR/_H9eofQ,rgtu`4IA&rVd<K[JE["QoNKJ:kB!a?AgrVF^d]`kE[``m8Wd<QMTOd(#OT3=n4/6O]EaQEB5pnBb&M%2QQek.?Jn.%(pqrPb7MSqg4T9V[f@?1,NNstfd3Uig:T[Xk^5d6>&Q'k/8Boi4>L$;J71@S/mUtj2V0ST2J:oi+0nl5+m20to9G18fX;rdMEL/#b*?_<7mp3T<pb96Z@6+roZt?iIl;j$C;Ro[]CntST0(cg/0VTU/SZ80VQ#)no^9SI1A\t2g8k'[&T.n]B=!e3oq5htYL2*oG7m:T,rDFI^F:?@W,\IWfl_D-'iaZnl)O$D,g/HQ,35?<D3egL:7\gN\7#8UDD!LHT&C6pAgP-E/TOdp`TVdJSq?f7$Usik3Z&]e"7?V/7e>03DosM:'W^[^>V8>T<L@fC$I-to']@T%tq.g1@*HZ6a;*ONja^+PjE]%22NiisFZrmu_8+EuLS%6^da/XICI%Y$1)3Fm<TK/bu3TdP^HPUb38l^A\A^Tf(VGUX@k2I:dXW,\fQ*DsB''iLAjj=_8`*3*n2qjASTtedJeVnU_IsO'H6=SGq%>%%:<'<ZN5V?B,,HnC4f\RiUY,k9<[TP/'ERWn3,S9`W<K&XQBSPTQp4mu8SI[sNTtY2QXCRO)`n*oAdGVWQ$PtGl@C_RQoQp<L6H(@jn.Sbq=1?m9One?-Sp^!Lj+(;p;K5t$I%kB8j2kFmj?gT2"Qa4r3=HD%Ks-MF'UK,A;3h(U2Qn>Y4qZMR%oBQ[-W&8Z#CV:G@X?-c-u3_eFE6)`7m:DW^uCaZ_T\0[nqe:@@mdtS3bJ1s^1LJr2aALBIQt*P$+j:VX6P-)JWc"*5lM^4L,6d2B02I6f_f9l;TJ>s2E#^jDfiIM>UR:F2VB-(M\NdoROF+a)p_)]ac_W#.#`7N.6DkGDUtl:Wi*\M<G*[O2Xa9\oHWhORmTNg'SWh>_0P.VJr/Rq1">%T=[d"l%Q$o<Vq4f6G!FlK:DQX#a.-2$WE8=K3(,`+Z?a[l*o>*G,:?;Bb*_]*`(4OkMgH7MG-,([(S')S2R?q8esC3Z.Q80b@;p`KI!#jm\A#Wl<Ac$n(GGW)$,pB=MUE]b2U6dH#oQS*1=YsC6!kdjQr^M,<6Yrkh!I$Ik4d)IJjo8[C[6l&R=/!E7b[;]e5,AiXk17'rA3]q;]q<^='5]t'-BE"j0rjLNE5_R]6liEWqXaC8iE7Aq/;5VcDWtah>!1DbgbYQ6uQ,aZ6__JoF*J(,FU7hTd#ier(i!3kV%s;V&kRpWG:E=[R#2g(Wb*SYE"HU,h.6%Z2t[;.(dl#I1>Q7WsHi47'b6>^-*ZF^?'[YYXU_R0k69[iG^MmD)`h;UTCsJ'6kmjI/U%Cd=rq@'g"1m6>X=3H%aPaSScKg/ApBZ`Y=cj],f%jL2Z)#dia4n,t20,LsRk]pL*&qHffd(h,jTKA@",N!*f6`(e/MMHK#>#Z@+Z.dmF@gKcFREBqk%<g@$Era_75'Y>.:CW:#&kB><DGh2m@.I"0jKZmSrTo-6YA`b*tJ^Dl#`S(NEk(53.`pHRm^f4p$ZDf$<#,ufpBg#]hU<P<<7:pTU"aF@\nF(Vd.H1_eQRc/2=WbN/PIZUGVQ86u87/sk,!H%si80[`amBb63]%]*rnfZH26+"d=k.CTUfdIBC>qZD('p-LTkI.MIr-`.*;30eUe2%PeZ8sRZXiO6_(5eo7/sd%Zg0*mMWB5"$Za!ZC;Bul9k]#4Gffe&S'=0tUYS0'C+,C;1]nU[O`[Jao'8ZWHk6'Ln,)N@YZfdnolL2YV=mCPqN^C!Q,a!eWl$c>18iB<E%^:YjNaWV<P\bYBlS?u^cp;"^LR@Z1E+Q+ag99runUK=a)#T]@B`""R)p+q,@&;?'`;I_]A?+p>B8<^8L0mQBg4f<"T"<fXj</KIQhX$5;G92fafrs4a/XICI%Y$1)3Fm<0Z+cfZMMT*)nHAHX-0C'*!3+skQ!.:j=iR/(;;ha;-Xr0[4&!LJ=7N?kUY^*Ws[Dl^^sO3ai6+Zs,CHI1IV8tj<+t'Z&?5`X)qS$duKh\li_85j=iR/(;;ha;-Xr0[4&!LJ=7N?kUY^*Ws[Dl^^sO3ai6+Zs,@')hu`Nb35?<D3egL:(eM+`W;1t4*]iL8j:J@!eeGn2<^=dH1Ec^W!RBU)oFs:#(;;ha;-Xr0[4&!LJ=7N?kUY^*Ws[Dl^^sO3ai6+Zs,@')hu`Nb35?<D3egL:(eM+`W;1t4*]iL8j:J@!eeGn2<^=dH1Ec^W!RBU)oFs:#(;;ha;-Xr0[4&!LJ=7N?kUY^*Ws[Dl^^sO3ai6+Zs,@')hu`Nb35?<D3egL:(eM+`W;1t4*]iL8j:J@!eeGn2<^=dH1Ec^W!RBU)oFs:#(;;ha;-Xr0[4&!LJ=7N?kUY^*Ws[Dl^^sO3ai6+Zs,@')hu`Nb35?<D3egL:(eM+`W;1t4*]iL8j:J@!eeGn2<^=dH1Ec^W!RBU)oFs:#(;;ha;-Xr0[4&!LJ=7N?kUY^*Ws[Dl^^sO3ai6+Zs,FjG1IQ.fUibjq`M2;B/Pe8X>C0ROF5"kk\6*HeO-/u]M0i^&b1n4G'p->k!*f6`(e/LR,h8W^jo]@Ekb,,@6`_b>;ZK0e!@8]2JG_>1#L4`Up=jj<2iWtp@]6o@;`R$&n?KZ&V(oOdP\bC@EYod($XXpl-n^IS=qoJ65YVb0oG)D&<<[.F?jJ9UAE+Phs2LGgN2AgX\,Dc=+3(8Z;0UgP-k+8o6ms#B7]^g!80gsUCP/gUIj&nkQa?#'SR-K_lo_buS/9r4#Zbf"]Q-i]3iRZ[h6b(r8"HHtEjACJPbd[:&;_YF&-%_sc7Ui:,Ll-V!oH.i;J1j)ffSt4jWOAeg@=SIM#j49mdA@eJ_2n>[p*]o+K*Ta!TQVA'`^6&%^:YjNaWV<7T(fFC-J;fLCX.f3Q.qL2$G[e'i;4+%*3p.b]$&Ik-1Vpll,b?a]f`g32eBfEL/#b*?_<GlWq08pi*L$Whb:U4YJ^PW(0>aA`6tm[;##CZ:q$YC`6k^\>)]=I\0fEmX6,;A0[Nkfn;9/0nl5+m8um@?@,7;q65%<k3V4^k:;g.>t/q4qq6:%Bc`mqT_WR5'd/:J!OhLJ0oY,/8?,*Ebm2bjcp;"^LKIQ\V>u@T!_PAB!VpYmREhb2j5!s9<fX*sIe@Y+.k+J(U9i*RTo5BM=!rR7pSq\]HEtpU^./-5j(p$r89qS\4gA&f`mKMdO3,"M/m]>/A,>#>KC(gD2rle?*UfWW9tcW*F^Ti0OZW55dgfpE5RrDKCuMF)(r_2k</Z?s&#e`dK>'Y^Z)V2+!=WB?P\`Gao%t9@B?'!K]d-,=MdkI(cSpl!<Ab*./,'cPr0.IAeD9q'7Hc3MO,</GTO^.H[-C>uY.P[!'-a5E[c+M_Z.l77P&%GpSCD\eAFmO2J,YUYlQMs7MF'0s)!S>(G4aeMXB25u:P4A%c;'U?;[9UG+G[c6[d_g%N8h]FW^T4u#LrCm6!kdj=B2T&!/@]Z8iE7Aq/6\Q1[:"T^*4'uiJ+_jEUnUEDiY0jDn4^YXO3&Xbh+.Z3*`Q70U?OM%8#t<G%>b0g@=Uo&OIF\lG:Op"ed-,kkn50QKTu^F/9q:<)J@:kXX<cB!Q"n5/2u:XA5ioWG:E=[R#2gpXRcAYE"HU,h1(!.+tJJ*!QZ#_H4c3M@1Z.('QQ;:t%c:I>&YM<Pb+*(r?V.fm!_^^G-Rq+aUK's7E)DUE9B#`s?7!>3K.PSOb:G8bZIB*ROia#eactWk3:\2M_N[67;4(EM9Gbk^S&Ws4rA/2h=4>Oo"P?=m8];L8/o.q<ctGFdp.LbV/7DS?)t'UFd!C4WQqk]Oeh3O.M@%YhSh[5Q`=e'Tg5j!*f6`(e/LR,h8W^jo]@Ekb,,@6`_b>;ZK0e!@8]2JG_?\Kq6U>X)FNBTe#`A.XA&<+Y`)c<WDLIgjpFL#M?mpa"WAY,H2F^2'5ZD6O/$n*+DpaRK=>C$7OSP#3<NR/F<kns#)mY_bod[mcH"T(AG1GbbBmQ0p'<2!*f6`(e/LR,h8W^jo]@Ekb,,@6`_b>;ZK0e!@8]2JG_>13.hUc;r@X[q!&\cEFC-CU7gWNC3o*:YE2,Q.TfUL6Wa@8)pa'42[26o$d_i1!*f6`(e/LR,h8W^jo]@Ekb,,@6`_b>;ZK0e!@8]2JG_>13.hUc;r@X[q!&\cEFC-CU7gWNC3o*:YE2,Q.TfUL6Wa@8)pa'42[26o$d_i1!*f6`(e/LR,h8W^jo]@Ekb,,@6`_b>;ZK0e@B=#:rt3RuPQ~>endstream
|
647 |
+
endobj
|
648 |
+
% 'Page9': class PDFPage
|
649 |
+
37 0 obj
|
650 |
+
% Page dictionary
|
651 |
+
<< /Contents 60 0 R
|
652 |
+
/MediaBox [ 0
|
653 |
+
0
|
654 |
+
595.2756
|
655 |
+
841.8898 ]
|
656 |
+
/Parent 51 0 R
|
657 |
+
/Resources << /Font 1 0 R
|
658 |
+
/ProcSet [ /PDF
|
659 |
+
/Text
|
660 |
+
/ImageB
|
661 |
+
/ImageC
|
662 |
+
/ImageI ]
|
663 |
+
/XObject << /FormXob.53a0efa2a6190e318597d225255b5698 36 0 R
|
664 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f 5 0 R >> >>
|
665 |
+
/Rotate 0
|
666 |
+
/Trans << >>
|
667 |
+
/Type /Page >>
|
668 |
+
endobj
|
669 |
+
% 'R38': class PDFCatalog
|
670 |
+
38 0 obj
|
671 |
+
% Document Root
|
672 |
+
<< /Outlines 40 0 R
|
673 |
+
/PageLabels 61 0 R
|
674 |
+
/PageMode /UseNone
|
675 |
+
/Pages 51 0 R
|
676 |
+
/Type /Catalog >>
|
677 |
+
endobj
|
678 |
+
% 'R39': class PDFInfo
|
679 |
+
39 0 obj
|
680 |
+
<< /Author ()
|
681 |
+
/CreationDate (D:20150105230537-01'00')
|
682 |
+
/Creator (\(unspecified\))
|
683 |
+
/Keywords ()
|
684 |
+
/Producer (ReportLab PDF Library - www.reportlab.com)
|
685 |
+
/Subject (\(unspecified\))
|
686 |
+
/Title () >>
|
687 |
+
endobj
|
688 |
+
% 'R40': class PDFOutlines
|
689 |
+
40 0 obj
|
690 |
+
<< /Count 11
|
691 |
+
/First 41 0 R
|
692 |
+
/Last 50 0 R
|
693 |
+
/Type /Outlines >>
|
694 |
+
endobj
|
695 |
+
% 'Outline.0': class OutlineEntryObject
|
696 |
+
41 0 obj
|
697 |
+
<< /Dest [ 28 0 R
|
698 |
+
/XYZ
|
699 |
+
62.69291
|
700 |
+
742.0687
|
701 |
+
0 ]
|
702 |
+
/Next 42 0 R
|
703 |
+
/Parent 40 0 R
|
704 |
+
/Title (\376\377\0001\000\240\000\240\000\240\000E\000i\000n\000l\000e\000i\000t\000u\000n\000g) >>
|
705 |
+
endobj
|
706 |
+
% 'Outline.1': class OutlineEntryObject
|
707 |
+
42 0 obj
|
708 |
+
<< /Dest [ 28 0 R
|
709 |
+
/XYZ
|
710 |
+
62.69291
|
711 |
+
655.0687
|
712 |
+
0 ]
|
713 |
+
/Next 43 0 R
|
714 |
+
/Parent 40 0 R
|
715 |
+
/Prev 41 0 R
|
716 |
+
/Title (\376\377\0002\000\240\000\240\000\240\000V\000o\000r\000a\000u\000s\000s\000e\000t\000z\000u\000n\000g\000e\000n) >>
|
717 |
+
endobj
|
718 |
+
% 'Outline.2': class OutlineEntryObject
|
719 |
+
43 0 obj
|
720 |
+
<< /Dest [ 28 0 R
|
721 |
+
/XYZ
|
722 |
+
62.69291
|
723 |
+
472.0687
|
724 |
+
0 ]
|
725 |
+
/Next 44 0 R
|
726 |
+
/Parent 40 0 R
|
727 |
+
/Prev 42 0 R
|
728 |
+
/Title (\376\377\0003\000\240\000\240\000\240\000I\000n\000s\000t\000a\000l\000l\000a\000t\000i\000o\000n) >>
|
729 |
+
endobj
|
730 |
+
% 'Outline.3': class OutlineEntryObject
|
731 |
+
44 0 obj
|
732 |
+
<< /Count 4
|
733 |
+
/Dest [ 29 0 R
|
734 |
+
/XYZ
|
735 |
+
62.69291
|
736 |
+
742.0687
|
737 |
+
0 ]
|
738 |
+
/First 45 0 R
|
739 |
+
/Last 48 0 R
|
740 |
+
/Next 49 0 R
|
741 |
+
/Parent 40 0 R
|
742 |
+
/Prev 43 0 R
|
743 |
+
/Title (\376\377\0004\000\240\000\240\000\240\000K\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n) >>
|
744 |
+
endobj
|
745 |
+
% 'Outline.11.0': class OutlineEntryObject
|
746 |
+
45 0 obj
|
747 |
+
<< /Dest [ 29 0 R
|
748 |
+
/XYZ
|
749 |
+
62.69291
|
750 |
+
649.0687
|
751 |
+
0 ]
|
752 |
+
/Next 46 0 R
|
753 |
+
/Parent 44 0 R
|
754 |
+
/Title (\376\377\0004\000.\0001\000\240\000\240\000\240\000A\000l\000l\000g\000e\000m\000e\000i\000n\000e\000 \000E\000i\000n\000s\000t\000e\000l\000l\000u\000n\000g\000e\000n) >>
|
755 |
+
endobj
|
756 |
+
% 'Outline.11.1': class OutlineEntryObject
|
757 |
+
46 0 obj
|
758 |
+
<< /Dest [ 29 0 R
|
759 |
+
/XYZ
|
760 |
+
62.69291
|
761 |
+
319.0687
|
762 |
+
0 ]
|
763 |
+
/Next 47 0 R
|
764 |
+
/Parent 44 0 R
|
765 |
+
/Prev 45 0 R
|
766 |
+
/Title (\376\377\0004\000.\0002\000\240\000\240\000\240\000E\000i\000n\000s\000t\000e\000l\000l\000u\000n\000g\000e\000n\000 \000z\000u\000r\000 \000B\000o\000n\000i\000t\000\344\000t\000s\000p\000r\000\374\000f\000u\000n\000g) >>
|
767 |
+
endobj
|
768 |
+
% 'Outline.11.2': class OutlineEntryObject
|
769 |
+
47 0 obj
|
770 |
+
<< /Dest [ 30 0 R
|
771 |
+
/XYZ
|
772 |
+
62.69291
|
773 |
+
484.0687
|
774 |
+
0 ]
|
775 |
+
/Next 48 0 R
|
776 |
+
/Parent 44 0 R
|
777 |
+
/Prev 46 0 R
|
778 |
+
/Title (\376\377\0004\000.\0003\000\240\000\240\000\240\000G\000\374\000l\000t\000i\000g\000k\000e\000i\000t\000 \000d\000e\000s\000 \000E\000r\000g\000e\000b\000n\000i\000s\000s\000e\000s) >>
|
779 |
+
endobj
|
780 |
+
% 'Outline.11.3': class OutlineEntryObject
|
781 |
+
48 0 obj
|
782 |
+
<< /Dest [ 32 0 R
|
783 |
+
/XYZ
|
784 |
+
62.69291
|
785 |
+
742.0687
|
786 |
+
0 ]
|
787 |
+
/Parent 44 0 R
|
788 |
+
/Prev 47 0 R
|
789 |
+
/Title (\376\377\0004\000.\0004\000\240\000\240\000\240\000A\000m\000p\000e\000l\000w\000e\000r\000t\000s\000p\000e\000z\000i\000f\000i\000s\000c\000h\000e\000 \000K\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n) >>
|
790 |
+
endobj
|
791 |
+
% 'Outline.4': class OutlineEntryObject
|
792 |
+
49 0 obj
|
793 |
+
<< /Dest [ 35 0 R
|
794 |
+
/XYZ
|
795 |
+
62.69291
|
796 |
+
742.0687
|
797 |
+
0 ]
|
798 |
+
/Next 50 0 R
|
799 |
+
/Parent 40 0 R
|
800 |
+
/Prev 44 0 R
|
801 |
+
/Title (\376\377\0005\000\240\000\240\000\240\000V\000e\000r\000h\000a\000l\000t\000e\000n\000 \000i\000m\000 \000C\000h\000e\000c\000k\000o\000u\000t) >>
|
802 |
+
endobj
|
803 |
+
% 'Outline.5': class OutlineEntryObject
|
804 |
+
50 0 obj
|
805 |
+
<< /Dest [ 37 0 R
|
806 |
+
/XYZ
|
807 |
+
62.69291
|
808 |
+
742.0687
|
809 |
+
0 ]
|
810 |
+
/Parent 40 0 R
|
811 |
+
/Prev 49 0 R
|
812 |
+
/Title (\376\377\0006\000\240\000\240\000\240\000K\000u\000n\000d\000e\000n\000b\000e\000r\000e\000i\000c\000h\000 \000i\000m\000 \000B\000a\000c\000k\000e\000n\000d) >>
|
813 |
+
endobj
|
814 |
+
% 'R51': class PDFPages
|
815 |
+
51 0 obj
|
816 |
+
% page tree
|
817 |
+
<< /Count 9
|
818 |
+
/Kids [ 6 0 R
|
819 |
+
27 0 R
|
820 |
+
28 0 R
|
821 |
+
29 0 R
|
822 |
+
30 0 R
|
823 |
+
31 0 R
|
824 |
+
32 0 R
|
825 |
+
35 0 R
|
826 |
+
37 0 R ]
|
827 |
+
/Type /Pages >>
|
828 |
+
endobj
|
829 |
+
% 'R52': class PDFStream
|
830 |
+
52 0 obj
|
831 |
+
% page stream
|
832 |
+
<< /Length 5899 >>
|
833 |
+
stream
|
834 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
835 |
+
q
|
836 |
+
1 0 0 1 62.69291 736.0687 cm
|
837 |
+
Q
|
838 |
+
q
|
839 |
+
1 0 0 1 62.69291 724.0687 cm
|
840 |
+
q
|
841 |
+
0 0 0 rg
|
842 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
843 |
+
Q
|
844 |
+
Q
|
845 |
+
q
|
846 |
+
1 0 0 1 62.69291 712.0687 cm
|
847 |
+
q
|
848 |
+
0 0 0 rg
|
849 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
850 |
+
Q
|
851 |
+
Q
|
852 |
+
q
|
853 |
+
1 0 0 1 62.69291 700.0687 cm
|
854 |
+
q
|
855 |
+
0 0 0 rg
|
856 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
857 |
+
Q
|
858 |
+
Q
|
859 |
+
q
|
860 |
+
1 0 0 1 62.69291 700.0687 cm
|
861 |
+
Q
|
862 |
+
q
|
863 |
+
1 0 0 1 62.69291 671.7223 cm
|
864 |
+
n 0 14.17323 m 469.8898 14.17323 l S
|
865 |
+
Q
|
866 |
+
q
|
867 |
+
1 0 0 1 62.69291 653.7223 cm
|
868 |
+
q
|
869 |
+
0 0 0 rg
|
870 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Magento Extension zur Durchf\374hrung von Bonit\344tspr\374fungen durch den Zahlungsdienstleister ExperCash) Tj T* ET
|
871 |
+
Q
|
872 |
+
Q
|
873 |
+
q
|
874 |
+
1 0 0 1 62.69291 625.3758 cm
|
875 |
+
n 0 14.17323 m 469.8898 14.17323 l S
|
876 |
+
Q
|
877 |
+
q
|
878 |
+
1 0 0 1 62.69291 619.3758 cm
|
879 |
+
Q
|
880 |
+
q
|
881 |
+
1 0 0 1 62.69291 607.3758 cm
|
882 |
+
q
|
883 |
+
0 0 0 rg
|
884 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
885 |
+
Q
|
886 |
+
Q
|
887 |
+
q
|
888 |
+
1 0 0 1 62.69291 595.3758 cm
|
889 |
+
q
|
890 |
+
0 0 0 rg
|
891 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
892 |
+
Q
|
893 |
+
Q
|
894 |
+
q
|
895 |
+
1 0 0 1 62.69291 583.3758 cm
|
896 |
+
q
|
897 |
+
0 0 0 rg
|
898 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
899 |
+
Q
|
900 |
+
Q
|
901 |
+
q
|
902 |
+
1 0 0 1 62.69291 571.3758 cm
|
903 |
+
q
|
904 |
+
0 0 0 rg
|
905 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
906 |
+
Q
|
907 |
+
Q
|
908 |
+
q
|
909 |
+
1 0 0 1 62.69291 559.3758 cm
|
910 |
+
q
|
911 |
+
0 0 0 rg
|
912 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
913 |
+
Q
|
914 |
+
Q
|
915 |
+
q
|
916 |
+
1 0 0 1 62.69291 547.3758 cm
|
917 |
+
q
|
918 |
+
0 0 0 rg
|
919 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
920 |
+
Q
|
921 |
+
Q
|
922 |
+
q
|
923 |
+
1 0 0 1 62.69291 535.3758 cm
|
924 |
+
q
|
925 |
+
0 0 0 rg
|
926 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
927 |
+
Q
|
928 |
+
Q
|
929 |
+
q
|
930 |
+
1 0 0 1 62.69291 523.3758 cm
|
931 |
+
q
|
932 |
+
0 0 0 rg
|
933 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
934 |
+
Q
|
935 |
+
Q
|
936 |
+
q
|
937 |
+
1 0 0 1 62.69291 511.3758 cm
|
938 |
+
q
|
939 |
+
0 0 0 rg
|
940 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
941 |
+
Q
|
942 |
+
Q
|
943 |
+
q
|
944 |
+
1 0 0 1 62.69291 499.3758 cm
|
945 |
+
q
|
946 |
+
0 0 0 rg
|
947 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
948 |
+
Q
|
949 |
+
Q
|
950 |
+
q
|
951 |
+
1 0 0 1 62.69291 499.3758 cm
|
952 |
+
Q
|
953 |
+
q
|
954 |
+
1 0 0 1 85.03937 405.3849 cm
|
955 |
+
q
|
956 |
+
425.1969 0 0 93.99088 0 0 cm
|
957 |
+
/FormXob.36022f2f4a38d530d012f5d48cb2ee15 Do
|
958 |
+
Q
|
959 |
+
Q
|
960 |
+
q
|
961 |
+
1 0 0 1 62.69291 399.3849 cm
|
962 |
+
Q
|
963 |
+
q
|
964 |
+
1 0 0 1 62.69291 387.3849 cm
|
965 |
+
q
|
966 |
+
0 0 0 rg
|
967 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
968 |
+
Q
|
969 |
+
Q
|
970 |
+
q
|
971 |
+
1 0 0 1 62.69291 375.3849 cm
|
972 |
+
q
|
973 |
+
0 0 0 rg
|
974 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
975 |
+
Q
|
976 |
+
Q
|
977 |
+
q
|
978 |
+
1 0 0 1 62.69291 363.3849 cm
|
979 |
+
q
|
980 |
+
0 0 0 rg
|
981 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
982 |
+
Q
|
983 |
+
Q
|
984 |
+
q
|
985 |
+
1 0 0 1 62.69291 351.3849 cm
|
986 |
+
q
|
987 |
+
0 0 0 rg
|
988 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
989 |
+
Q
|
990 |
+
Q
|
991 |
+
q
|
992 |
+
1 0 0 1 62.69291 339.3849 cm
|
993 |
+
q
|
994 |
+
0 0 0 rg
|
995 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
996 |
+
Q
|
997 |
+
Q
|
998 |
+
q
|
999 |
+
1 0 0 1 62.69291 327.3849 cm
|
1000 |
+
q
|
1001 |
+
0 0 0 rg
|
1002 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1003 |
+
Q
|
1004 |
+
Q
|
1005 |
+
q
|
1006 |
+
1 0 0 1 62.69291 315.3849 cm
|
1007 |
+
q
|
1008 |
+
0 0 0 rg
|
1009 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1010 |
+
Q
|
1011 |
+
Q
|
1012 |
+
q
|
1013 |
+
1 0 0 1 62.69291 303.3849 cm
|
1014 |
+
q
|
1015 |
+
0 0 0 rg
|
1016 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1017 |
+
Q
|
1018 |
+
Q
|
1019 |
+
q
|
1020 |
+
1 0 0 1 62.69291 291.3849 cm
|
1021 |
+
q
|
1022 |
+
0 0 0 rg
|
1023 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1024 |
+
Q
|
1025 |
+
Q
|
1026 |
+
q
|
1027 |
+
1 0 0 1 62.69291 279.3849 cm
|
1028 |
+
q
|
1029 |
+
0 0 0 rg
|
1030 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1031 |
+
Q
|
1032 |
+
Q
|
1033 |
+
q
|
1034 |
+
1 0 0 1 62.69291 267.3849 cm
|
1035 |
+
q
|
1036 |
+
0 0 0 rg
|
1037 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1038 |
+
Q
|
1039 |
+
Q
|
1040 |
+
q
|
1041 |
+
1 0 0 1 62.69291 255.3849 cm
|
1042 |
+
q
|
1043 |
+
0 0 0 rg
|
1044 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1045 |
+
Q
|
1046 |
+
Q
|
1047 |
+
q
|
1048 |
+
1 0 0 1 62.69291 243.3849 cm
|
1049 |
+
q
|
1050 |
+
0 0 0 rg
|
1051 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1052 |
+
Q
|
1053 |
+
Q
|
1054 |
+
q
|
1055 |
+
1 0 0 1 62.69291 231.3849 cm
|
1056 |
+
q
|
1057 |
+
0 0 0 rg
|
1058 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1059 |
+
Q
|
1060 |
+
Q
|
1061 |
+
q
|
1062 |
+
1 0 0 1 62.69291 219.3849 cm
|
1063 |
+
q
|
1064 |
+
0 0 0 rg
|
1065 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1066 |
+
Q
|
1067 |
+
Q
|
1068 |
+
q
|
1069 |
+
1 0 0 1 62.69291 207.3849 cm
|
1070 |
+
q
|
1071 |
+
0 0 0 rg
|
1072 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1073 |
+
Q
|
1074 |
+
Q
|
1075 |
+
q
|
1076 |
+
1 0 0 1 62.69291 207.3849 cm
|
1077 |
+
Q
|
1078 |
+
q
|
1079 |
+
1 0 0 1 62.69291 201.3849 cm
|
1080 |
+
Q
|
1081 |
+
q
|
1082 |
+
1 0 0 1 62.69291 186.3849 cm
|
1083 |
+
0 0 0 rg
|
1084 |
+
BT /F1 10 Tf 12 TL ET
|
1085 |
+
q
|
1086 |
+
1 0 0 1 6 3 cm
|
1087 |
+
q
|
1088 |
+
0 0 0 rg
|
1089 |
+
BT 1 0 0 1 0 2 Tm /F2 10 Tf 12 TL 4.69937 0 Td (Modulversion:) Tj T* -4.69937 0 Td ET
|
1090 |
+
Q
|
1091 |
+
Q
|
1092 |
+
q
|
1093 |
+
1 0 0 1 91.03937 3 cm
|
1094 |
+
q
|
1095 |
+
0 0 0 rg
|
1096 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (15.01.05) Tj T* ET
|
1097 |
+
Q
|
1098 |
+
Q
|
1099 |
+
q
|
1100 |
+
Q
|
1101 |
+
Q
|
1102 |
+
q
|
1103 |
+
1 0 0 1 62.69291 171.3849 cm
|
1104 |
+
0 0 0 rg
|
1105 |
+
BT /F1 10 Tf 12 TL ET
|
1106 |
+
q
|
1107 |
+
1 0 0 1 6 3 cm
|
1108 |
+
q
|
1109 |
+
0 0 0 rg
|
1110 |
+
BT 1 0 0 1 0 2 Tm /F2 10 Tf 12 TL 42.47937 0 Td (Firma:) Tj T* -42.47937 0 Td ET
|
1111 |
+
Q
|
1112 |
+
Q
|
1113 |
+
q
|
1114 |
+
1 0 0 1 91.03937 3 cm
|
1115 |
+
q
|
1116 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F1 10 Tf 0 0 0 rg (Netresearch GmbH & Co KG) Tj T* ET
|
1117 |
+
Q
|
1118 |
+
Q
|
1119 |
+
q
|
1120 |
+
Q
|
1121 |
+
Q
|
1122 |
+
q
|
1123 |
+
1 0 0 1 62.69291 156.3849 cm
|
1124 |
+
0 0 0 rg
|
1125 |
+
BT /F1 10 Tf 12 TL ET
|
1126 |
+
q
|
1127 |
+
1 0 0 1 6 3 cm
|
1128 |
+
q
|
1129 |
+
0 0 0 rg
|
1130 |
+
BT 1 0 0 1 0 2 Tm /F2 10 Tf 12 TL 31.37937 0 Td (Autoren:) Tj T* -31.37937 0 Td ET
|
1131 |
+
Q
|
1132 |
+
Q
|
1133 |
+
q
|
1134 |
+
1 0 0 1 91.03937 3 cm
|
1135 |
+
q
|
1136 |
+
0 0 0 rg
|
1137 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Michael L\374hr, Sebastian Ertner) Tj T* ET
|
1138 |
+
Q
|
1139 |
+
Q
|
1140 |
+
q
|
1141 |
+
Q
|
1142 |
+
Q
|
1143 |
+
q
|
1144 |
+
1 0 0 1 62.69291 141.3849 cm
|
1145 |
+
0 0 0 rg
|
1146 |
+
BT /F1 10 Tf 12 TL ET
|
1147 |
+
q
|
1148 |
+
1 0 0 1 6 3 cm
|
1149 |
+
q
|
1150 |
+
0 0 0 rg
|
1151 |
+
BT 1 0 0 1 0 2 Tm /F2 10 Tf 12 TL 38.59937 0 Td (Datum:) Tj T* -38.59937 0 Td ET
|
1152 |
+
Q
|
1153 |
+
Q
|
1154 |
+
q
|
1155 |
+
1 0 0 1 91.03937 3 cm
|
1156 |
+
q
|
1157 |
+
0 0 0 rg
|
1158 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (05/01/2015) Tj T* ET
|
1159 |
+
Q
|
1160 |
+
Q
|
1161 |
+
q
|
1162 |
+
Q
|
1163 |
+
Q
|
1164 |
+
q
|
1165 |
+
1 0 0 1 62.69291 141.3849 cm
|
1166 |
+
Q
|
1167 |
+
q
|
1168 |
+
1 0 0 1 56.69291 762.242 cm
|
1169 |
+
1 1 1 rg
|
1170 |
+
n 0 51.30135 481.8898 -51.30135 re f*
|
1171 |
+
0 0 0 rg
|
1172 |
+
BT /F1 10 Tf 12 TL ET
|
1173 |
+
q
|
1174 |
+
1 0 0 1 327.2598 3 cm
|
1175 |
+
q
|
1176 |
+
127.5591 0 0 45.30135 0 0 cm
|
1177 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f Do
|
1178 |
+
Q
|
1179 |
+
Q
|
1180 |
+
q
|
1181 |
+
1 J
|
1182 |
+
1 j
|
1183 |
+
0 0 0 RG
|
1184 |
+
.25 w
|
1185 |
+
n 321.2598 0 m 321.2598 51.30135 l S
|
1186 |
+
n 0 51.30135 m 481.8898 51.30135 l S
|
1187 |
+
n 0 0 m 481.8898 0 l S
|
1188 |
+
n 0 0 m 0 51.30135 l S
|
1189 |
+
n 481.8898 0 m 481.8898 51.30135 l S
|
1190 |
+
Q
|
1191 |
+
Q
|
1192 |
+
q
|
1193 |
+
1 0 0 1 56.69291 56.69291 cm
|
1194 |
+
0 0 0 rg
|
1195 |
+
BT /F1 10 Tf 12 TL ET
|
1196 |
+
q
|
1197 |
+
1 0 0 1 6 39 cm
|
1198 |
+
q
|
1199 |
+
0 0 0 rg
|
1200 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 1 / 9 - 05/01/2015) Tj T* ET
|
1201 |
+
Q
|
1202 |
+
Q
|
1203 |
+
q
|
1204 |
+
1 0 0 1 6 27 cm
|
1205 |
+
q
|
1206 |
+
0 0 0 rg
|
1207 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright ExperCash \251 2015.) Tj T* ET
|
1208 |
+
Q
|
1209 |
+
Q
|
1210 |
+
q
|
1211 |
+
1 0 0 1 6 15 cm
|
1212 |
+
q
|
1213 |
+
0 0 0 rg
|
1214 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
1215 |
+
Q
|
1216 |
+
Q
|
1217 |
+
q
|
1218 |
+
1 0 0 1 6 3 cm
|
1219 |
+
q
|
1220 |
+
0 0 0 rg
|
1221 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
1222 |
+
Q
|
1223 |
+
Q
|
1224 |
+
q
|
1225 |
+
Q
|
1226 |
+
Q
|
1227 |
+
|
1228 |
+
endstream
|
1229 |
+
endobj
|
1230 |
+
% 'R53': class PDFStream
|
1231 |
+
53 0 obj
|
1232 |
+
% page stream
|
1233 |
+
<< /Length 3869 >>
|
1234 |
+
stream
|
1235 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
1236 |
+
q
|
1237 |
+
1 0 0 1 62.69291 721.0687 cm
|
1238 |
+
q
|
1239 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (ExperCash Bonit\344tspr\374fung - Benutzerdokumentation) Tj T* ET
|
1240 |
+
Q
|
1241 |
+
Q
|
1242 |
+
q
|
1243 |
+
1 0 0 1 62.69291 535.0687 cm
|
1244 |
+
0 0 0 rg
|
1245 |
+
BT /F1 10 Tf 12 TL ET
|
1246 |
+
q
|
1247 |
+
1 0 0 1 0 165 cm
|
1248 |
+
q
|
1249 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F2 10 Tf 0 0 .501961 rg (1 Einleitung) Tj T* ET
|
1250 |
+
Q
|
1251 |
+
Q
|
1252 |
+
q
|
1253 |
+
1 0 0 1 397.8898 165 cm
|
1254 |
+
q
|
1255 |
+
0 0 .501961 rg
|
1256 |
+
0 0 .501961 RG
|
1257 |
+
BT 1 0 0 1 0 2 Tm /F2 10 Tf 12 TL 66.44 0 Td (3) Tj T* -66.44 0 Td ET
|
1258 |
+
Q
|
1259 |
+
Q
|
1260 |
+
q
|
1261 |
+
1 0 0 1 0 147 cm
|
1262 |
+
q
|
1263 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F2 10 Tf 0 0 .501961 rg (2 Voraussetzungen) Tj T* ET
|
1264 |
+
Q
|
1265 |
+
Q
|
1266 |
+
q
|
1267 |
+
1 0 0 1 397.8898 147 cm
|
1268 |
+
q
|
1269 |
+
0 0 .501961 rg
|
1270 |
+
0 0 .501961 RG
|
1271 |
+
BT 1 0 0 1 0 2 Tm /F2 10 Tf 12 TL 66.44 0 Td (3) Tj T* -66.44 0 Td ET
|
1272 |
+
Q
|
1273 |
+
Q
|
1274 |
+
q
|
1275 |
+
1 0 0 1 0 129 cm
|
1276 |
+
q
|
1277 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F2 10 Tf 0 0 .501961 rg (3 Installation) Tj T* ET
|
1278 |
+
Q
|
1279 |
+
Q
|
1280 |
+
q
|
1281 |
+
1 0 0 1 397.8898 129 cm
|
1282 |
+
q
|
1283 |
+
0 0 .501961 rg
|
1284 |
+
0 0 .501961 RG
|
1285 |
+
BT 1 0 0 1 0 2 Tm /F2 10 Tf 12 TL 66.44 0 Td (3) Tj T* -66.44 0 Td ET
|
1286 |
+
Q
|
1287 |
+
Q
|
1288 |
+
q
|
1289 |
+
1 0 0 1 0 111 cm
|
1290 |
+
q
|
1291 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F2 10 Tf 0 0 .501961 rg (4 Konfiguration) Tj T* ET
|
1292 |
+
Q
|
1293 |
+
Q
|
1294 |
+
q
|
1295 |
+
1 0 0 1 397.8898 111 cm
|
1296 |
+
q
|
1297 |
+
0 0 .501961 rg
|
1298 |
+
0 0 .501961 RG
|
1299 |
+
BT 1 0 0 1 0 2 Tm /F2 10 Tf 12 TL 66.44 0 Td (4) Tj T* -66.44 0 Td ET
|
1300 |
+
Q
|
1301 |
+
Q
|
1302 |
+
q
|
1303 |
+
1 0 0 1 0 93 cm
|
1304 |
+
q
|
1305 |
+
BT 1 0 0 1 20 2 Tm 12 TL /F1 10 Tf 0 0 .501961 rg (4.1 Allgemeine Einstellungen) Tj T* ET
|
1306 |
+
Q
|
1307 |
+
Q
|
1308 |
+
q
|
1309 |
+
1 0 0 1 397.8898 93 cm
|
1310 |
+
q
|
1311 |
+
0 0 .501961 rg
|
1312 |
+
0 0 .501961 RG
|
1313 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 66.44 0 Td (4) Tj T* -66.44 0 Td ET
|
1314 |
+
Q
|
1315 |
+
Q
|
1316 |
+
q
|
1317 |
+
1 0 0 1 0 75 cm
|
1318 |
+
q
|
1319 |
+
BT 1 0 0 1 20 2 Tm 12 TL /F1 10 Tf 0 0 .501961 rg (4.2 Einstellungen zur Bonit\344tspr\374fung) Tj T* ET
|
1320 |
+
Q
|
1321 |
+
Q
|
1322 |
+
q
|
1323 |
+
1 0 0 1 397.8898 75 cm
|
1324 |
+
q
|
1325 |
+
0 0 .501961 rg
|
1326 |
+
0 0 .501961 RG
|
1327 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 66.44 0 Td (4) Tj T* -66.44 0 Td ET
|
1328 |
+
Q
|
1329 |
+
Q
|
1330 |
+
q
|
1331 |
+
1 0 0 1 0 57 cm
|
1332 |
+
q
|
1333 |
+
BT 1 0 0 1 20 2 Tm 12 TL /F1 10 Tf 0 0 .501961 rg (4.3 G\374ltigkeit des Ergebnisses) Tj T* ET
|
1334 |
+
Q
|
1335 |
+
Q
|
1336 |
+
q
|
1337 |
+
1 0 0 1 397.8898 57 cm
|
1338 |
+
q
|
1339 |
+
0 0 .501961 rg
|
1340 |
+
0 0 .501961 RG
|
1341 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 66.44 0 Td (5) Tj T* -66.44 0 Td ET
|
1342 |
+
Q
|
1343 |
+
Q
|
1344 |
+
q
|
1345 |
+
1 0 0 1 0 39 cm
|
1346 |
+
q
|
1347 |
+
BT 1 0 0 1 20 2 Tm 12 TL /F1 10 Tf 0 0 .501961 rg (4.4 Ampelwertspezifische Konfiguration) Tj T* ET
|
1348 |
+
Q
|
1349 |
+
Q
|
1350 |
+
q
|
1351 |
+
1 0 0 1 397.8898 39 cm
|
1352 |
+
q
|
1353 |
+
0 0 .501961 rg
|
1354 |
+
0 0 .501961 RG
|
1355 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 66.44 0 Td (7) Tj T* -66.44 0 Td ET
|
1356 |
+
Q
|
1357 |
+
Q
|
1358 |
+
q
|
1359 |
+
1 0 0 1 0 21 cm
|
1360 |
+
q
|
1361 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F2 10 Tf 0 0 .501961 rg (5 Verhalten im Checkout) Tj T* ET
|
1362 |
+
Q
|
1363 |
+
Q
|
1364 |
+
q
|
1365 |
+
1 0 0 1 397.8898 21 cm
|
1366 |
+
q
|
1367 |
+
0 0 .501961 rg
|
1368 |
+
0 0 .501961 RG
|
1369 |
+
BT 1 0 0 1 0 2 Tm /F2 10 Tf 12 TL 66.44 0 Td (8) Tj T* -66.44 0 Td ET
|
1370 |
+
Q
|
1371 |
+
Q
|
1372 |
+
q
|
1373 |
+
1 0 0 1 0 3 cm
|
1374 |
+
q
|
1375 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F2 10 Tf 0 0 .501961 rg (6 Kundenbereich im Backend) Tj T* ET
|
1376 |
+
Q
|
1377 |
+
Q
|
1378 |
+
q
|
1379 |
+
1 0 0 1 397.8898 3 cm
|
1380 |
+
q
|
1381 |
+
0 0 .501961 rg
|
1382 |
+
0 0 .501961 RG
|
1383 |
+
BT 1 0 0 1 0 2 Tm /F2 10 Tf 12 TL 66.44 0 Td (9) Tj T* -66.44 0 Td ET
|
1384 |
+
Q
|
1385 |
+
Q
|
1386 |
+
q
|
1387 |
+
Q
|
1388 |
+
Q
|
1389 |
+
q
|
1390 |
+
1 0 0 1 62.69291 535.0687 cm
|
1391 |
+
Q
|
1392 |
+
q
|
1393 |
+
1 0 0 1 56.69291 762.242 cm
|
1394 |
+
1 1 1 rg
|
1395 |
+
n 0 51.30135 481.8898 -51.30135 re f*
|
1396 |
+
0 0 0 rg
|
1397 |
+
BT /F1 10 Tf 12 TL ET
|
1398 |
+
q
|
1399 |
+
1 0 0 1 327.2598 3 cm
|
1400 |
+
q
|
1401 |
+
127.5591 0 0 45.30135 0 0 cm
|
1402 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f Do
|
1403 |
+
Q
|
1404 |
+
Q
|
1405 |
+
q
|
1406 |
+
1 J
|
1407 |
+
1 j
|
1408 |
+
0 0 0 RG
|
1409 |
+
.25 w
|
1410 |
+
n 321.2598 0 m 321.2598 51.30135 l S
|
1411 |
+
n 0 51.30135 m 481.8898 51.30135 l S
|
1412 |
+
n 0 0 m 481.8898 0 l S
|
1413 |
+
n 0 0 m 0 51.30135 l S
|
1414 |
+
n 481.8898 0 m 481.8898 51.30135 l S
|
1415 |
+
Q
|
1416 |
+
Q
|
1417 |
+
q
|
1418 |
+
1 0 0 1 56.69291 56.69291 cm
|
1419 |
+
0 0 0 rg
|
1420 |
+
BT /F1 10 Tf 12 TL ET
|
1421 |
+
q
|
1422 |
+
1 0 0 1 6 39 cm
|
1423 |
+
q
|
1424 |
+
0 0 0 rg
|
1425 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 2 / 9 - 05/01/2015) Tj T* ET
|
1426 |
+
Q
|
1427 |
+
Q
|
1428 |
+
q
|
1429 |
+
1 0 0 1 6 27 cm
|
1430 |
+
q
|
1431 |
+
0 0 0 rg
|
1432 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright ExperCash \251 2015.) Tj T* ET
|
1433 |
+
Q
|
1434 |
+
Q
|
1435 |
+
q
|
1436 |
+
1 0 0 1 6 15 cm
|
1437 |
+
q
|
1438 |
+
0 0 0 rg
|
1439 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
1440 |
+
Q
|
1441 |
+
Q
|
1442 |
+
q
|
1443 |
+
1 0 0 1 6 3 cm
|
1444 |
+
q
|
1445 |
+
0 0 0 rg
|
1446 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
1447 |
+
Q
|
1448 |
+
Q
|
1449 |
+
q
|
1450 |
+
Q
|
1451 |
+
Q
|
1452 |
+
|
1453 |
+
endstream
|
1454 |
+
endobj
|
1455 |
+
% 'R54': class PDFStream
|
1456 |
+
54 0 obj
|
1457 |
+
% page stream
|
1458 |
+
<< /Length 7877 >>
|
1459 |
+
stream
|
1460 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
1461 |
+
q
|
1462 |
+
1 0 0 1 62.69291 721.0687 cm
|
1463 |
+
q
|
1464 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (1 Einleitung) Tj T* ET
|
1465 |
+
Q
|
1466 |
+
Q
|
1467 |
+
q
|
1468 |
+
1 0 0 1 62.69291 667.0687 cm
|
1469 |
+
q
|
1470 |
+
0 0 0 rg
|
1471 |
+
BT 1 0 0 1 0 38 Tm /F1 10 Tf 12 TL 2.891647 Tw (Mit der Extension f\374r die Bonit\344tspr\374fung bietet der Zahlungsdienstleister ExperCash ein Modul f\374r) Tj T* 0 Tw 1.275318 Tw (Magento an, mit dem es m\366glich ist, die im Checkout angebotenen Zahlarten gem\344\337 der Bonit\344t Ihres) Tj T* 0 Tw 1.084147 Tw (Kunden anzuzeigen. Um bestm\366gliche Ergenisse zu erzielen sollten die Anrede und das Geburtsdatum) Tj T* 0 Tw (Ihres Kunden erfasst werden.) Tj T* ET
|
1472 |
+
Q
|
1473 |
+
Q
|
1474 |
+
q
|
1475 |
+
1 0 0 1 62.69291 634.0687 cm
|
1476 |
+
q
|
1477 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (2 Voraussetzungen) Tj T* ET
|
1478 |
+
Q
|
1479 |
+
Q
|
1480 |
+
q
|
1481 |
+
1 0 0 1 62.69291 622.0687 cm
|
1482 |
+
Q
|
1483 |
+
q
|
1484 |
+
1 0 0 1 62.69291 622.0687 cm
|
1485 |
+
Q
|
1486 |
+
q
|
1487 |
+
1 0 0 1 62.69291 610.0687 cm
|
1488 |
+
0 0 0 rg
|
1489 |
+
BT /F1 10 Tf 12 TL ET
|
1490 |
+
q
|
1491 |
+
1 0 0 1 6 -3 cm
|
1492 |
+
q
|
1493 |
+
0 0 0 rg
|
1494 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1495 |
+
Q
|
1496 |
+
Q
|
1497 |
+
q
|
1498 |
+
1 0 0 1 23 -3 cm
|
1499 |
+
q
|
1500 |
+
0 0 0 rg
|
1501 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (PHP 5.2+) Tj T* ET
|
1502 |
+
Q
|
1503 |
+
Q
|
1504 |
+
q
|
1505 |
+
Q
|
1506 |
+
Q
|
1507 |
+
q
|
1508 |
+
1 0 0 1 62.69291 604.0687 cm
|
1509 |
+
Q
|
1510 |
+
q
|
1511 |
+
1 0 0 1 62.69291 484.0687 cm
|
1512 |
+
0 0 0 rg
|
1513 |
+
BT /F1 10 Tf 12 TL ET
|
1514 |
+
q
|
1515 |
+
1 0 0 1 6 105 cm
|
1516 |
+
q
|
1517 |
+
0 0 0 rg
|
1518 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1519 |
+
Q
|
1520 |
+
Q
|
1521 |
+
q
|
1522 |
+
1 0 0 1 23 105 cm
|
1523 |
+
q
|
1524 |
+
0 0 0 rg
|
1525 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Ein Magento der Version) Tj T* ET
|
1526 |
+
Q
|
1527 |
+
Q
|
1528 |
+
q
|
1529 |
+
1 0 0 1 23 99 cm
|
1530 |
+
Q
|
1531 |
+
q
|
1532 |
+
1 0 0 1 23 99 cm
|
1533 |
+
Q
|
1534 |
+
q
|
1535 |
+
1 0 0 1 23 87 cm
|
1536 |
+
0 0 0 rg
|
1537 |
+
BT /F1 10 Tf 12 TL ET
|
1538 |
+
q
|
1539 |
+
1 0 0 1 6 -3 cm
|
1540 |
+
q
|
1541 |
+
0 0 0 rg
|
1542 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1543 |
+
Q
|
1544 |
+
Q
|
1545 |
+
q
|
1546 |
+
1 0 0 1 23 -3 cm
|
1547 |
+
q
|
1548 |
+
0 0 0 rg
|
1549 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Community Edition 1.6.x) Tj T* ET
|
1550 |
+
Q
|
1551 |
+
Q
|
1552 |
+
q
|
1553 |
+
Q
|
1554 |
+
Q
|
1555 |
+
q
|
1556 |
+
1 0 0 1 23 81 cm
|
1557 |
+
Q
|
1558 |
+
q
|
1559 |
+
1 0 0 1 23 69 cm
|
1560 |
+
0 0 0 rg
|
1561 |
+
BT /F1 10 Tf 12 TL ET
|
1562 |
+
q
|
1563 |
+
1 0 0 1 6 -3 cm
|
1564 |
+
q
|
1565 |
+
0 0 0 rg
|
1566 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1567 |
+
Q
|
1568 |
+
Q
|
1569 |
+
q
|
1570 |
+
1 0 0 1 23 -3 cm
|
1571 |
+
q
|
1572 |
+
0 0 0 rg
|
1573 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Community Edition 1.7.x) Tj T* ET
|
1574 |
+
Q
|
1575 |
+
Q
|
1576 |
+
q
|
1577 |
+
Q
|
1578 |
+
Q
|
1579 |
+
q
|
1580 |
+
1 0 0 1 23 63 cm
|
1581 |
+
Q
|
1582 |
+
q
|
1583 |
+
1 0 0 1 23 51 cm
|
1584 |
+
0 0 0 rg
|
1585 |
+
BT /F1 10 Tf 12 TL ET
|
1586 |
+
q
|
1587 |
+
1 0 0 1 6 -3 cm
|
1588 |
+
q
|
1589 |
+
0 0 0 rg
|
1590 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1591 |
+
Q
|
1592 |
+
Q
|
1593 |
+
q
|
1594 |
+
1 0 0 1 23 -3 cm
|
1595 |
+
q
|
1596 |
+
0 0 0 rg
|
1597 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Community Edition 1.8.x) Tj T* ET
|
1598 |
+
Q
|
1599 |
+
Q
|
1600 |
+
q
|
1601 |
+
Q
|
1602 |
+
Q
|
1603 |
+
q
|
1604 |
+
1 0 0 1 23 45 cm
|
1605 |
+
Q
|
1606 |
+
q
|
1607 |
+
1 0 0 1 23 33 cm
|
1608 |
+
0 0 0 rg
|
1609 |
+
BT /F1 10 Tf 12 TL ET
|
1610 |
+
q
|
1611 |
+
1 0 0 1 6 -3 cm
|
1612 |
+
q
|
1613 |
+
0 0 0 rg
|
1614 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1615 |
+
Q
|
1616 |
+
Q
|
1617 |
+
q
|
1618 |
+
1 0 0 1 23 -3 cm
|
1619 |
+
q
|
1620 |
+
0 0 0 rg
|
1621 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Enterprise Edition 1.11.x) Tj T* ET
|
1622 |
+
Q
|
1623 |
+
Q
|
1624 |
+
q
|
1625 |
+
Q
|
1626 |
+
Q
|
1627 |
+
q
|
1628 |
+
1 0 0 1 23 27 cm
|
1629 |
+
Q
|
1630 |
+
q
|
1631 |
+
1 0 0 1 23 15 cm
|
1632 |
+
0 0 0 rg
|
1633 |
+
BT /F1 10 Tf 12 TL ET
|
1634 |
+
q
|
1635 |
+
1 0 0 1 6 -3 cm
|
1636 |
+
q
|
1637 |
+
0 0 0 rg
|
1638 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1639 |
+
Q
|
1640 |
+
Q
|
1641 |
+
q
|
1642 |
+
1 0 0 1 23 -3 cm
|
1643 |
+
q
|
1644 |
+
0 0 0 rg
|
1645 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Enterprise Edition 1.12.x) Tj T* ET
|
1646 |
+
Q
|
1647 |
+
Q
|
1648 |
+
q
|
1649 |
+
Q
|
1650 |
+
Q
|
1651 |
+
q
|
1652 |
+
1 0 0 1 23 9 cm
|
1653 |
+
Q
|
1654 |
+
q
|
1655 |
+
1 0 0 1 23 -3 cm
|
1656 |
+
0 0 0 rg
|
1657 |
+
BT /F1 10 Tf 12 TL ET
|
1658 |
+
q
|
1659 |
+
1 0 0 1 6 -3 cm
|
1660 |
+
q
|
1661 |
+
0 0 0 rg
|
1662 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1663 |
+
Q
|
1664 |
+
Q
|
1665 |
+
q
|
1666 |
+
1 0 0 1 23 -3 cm
|
1667 |
+
q
|
1668 |
+
0 0 0 rg
|
1669 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Enterprise Edition 1.13.x) Tj T* ET
|
1670 |
+
Q
|
1671 |
+
Q
|
1672 |
+
q
|
1673 |
+
Q
|
1674 |
+
Q
|
1675 |
+
q
|
1676 |
+
1 0 0 1 23 -3 cm
|
1677 |
+
Q
|
1678 |
+
q
|
1679 |
+
Q
|
1680 |
+
Q
|
1681 |
+
q
|
1682 |
+
1 0 0 1 62.69291 484.0687 cm
|
1683 |
+
Q
|
1684 |
+
q
|
1685 |
+
1 0 0 1 62.69291 451.0687 cm
|
1686 |
+
q
|
1687 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (3 Installation) Tj T* ET
|
1688 |
+
Q
|
1689 |
+
Q
|
1690 |
+
q
|
1691 |
+
1 0 0 1 62.69291 439.0687 cm
|
1692 |
+
Q
|
1693 |
+
q
|
1694 |
+
1 0 0 1 62.69291 439.0687 cm
|
1695 |
+
Q
|
1696 |
+
q
|
1697 |
+
1 0 0 1 62.69291 427.0687 cm
|
1698 |
+
0 0 0 rg
|
1699 |
+
BT /F1 10 Tf 12 TL ET
|
1700 |
+
q
|
1701 |
+
1 0 0 1 6 -3 cm
|
1702 |
+
q
|
1703 |
+
0 0 0 rg
|
1704 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (1.) Tj T* -5.66 0 Td ET
|
1705 |
+
Q
|
1706 |
+
Q
|
1707 |
+
q
|
1708 |
+
1 0 0 1 23 -3 cm
|
1709 |
+
q
|
1710 |
+
0 0 0 rg
|
1711 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kopieren Sie den "Extension Key" von der MagentoCommerce-Webseite) Tj T* ET
|
1712 |
+
Q
|
1713 |
+
Q
|
1714 |
+
q
|
1715 |
+
Q
|
1716 |
+
Q
|
1717 |
+
q
|
1718 |
+
1 0 0 1 62.69291 421.0687 cm
|
1719 |
+
Q
|
1720 |
+
q
|
1721 |
+
1 0 0 1 62.69291 409.0687 cm
|
1722 |
+
0 0 0 rg
|
1723 |
+
BT /F1 10 Tf 12 TL ET
|
1724 |
+
q
|
1725 |
+
1 0 0 1 6 -3 cm
|
1726 |
+
q
|
1727 |
+
0 0 0 rg
|
1728 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (2.) Tj T* -5.66 0 Td ET
|
1729 |
+
Q
|
1730 |
+
Q
|
1731 |
+
q
|
1732 |
+
1 0 0 1 23 -3 cm
|
1733 |
+
q
|
1734 |
+
0 0 0 rg
|
1735 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Melden Sie sich in Ihrem Magento Backend an) Tj T* ET
|
1736 |
+
Q
|
1737 |
+
Q
|
1738 |
+
q
|
1739 |
+
Q
|
1740 |
+
Q
|
1741 |
+
q
|
1742 |
+
1 0 0 1 62.69291 403.0687 cm
|
1743 |
+
Q
|
1744 |
+
q
|
1745 |
+
1 0 0 1 62.69291 391.0687 cm
|
1746 |
+
0 0 0 rg
|
1747 |
+
BT /F1 10 Tf 12 TL ET
|
1748 |
+
q
|
1749 |
+
1 0 0 1 6 -3 cm
|
1750 |
+
q
|
1751 |
+
0 0 0 rg
|
1752 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (3.) Tj T* -5.66 0 Td ET
|
1753 |
+
Q
|
1754 |
+
Q
|
1755 |
+
q
|
1756 |
+
1 0 0 1 23 -3 cm
|
1757 |
+
q
|
1758 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F1 10 Tf 0 0 0 rg (Navigieren Sie zu "System" -) Tj (> "Magento Connect" -) Tj (> "Magento Connect Manager") Tj T* ET
|
1759 |
+
Q
|
1760 |
+
Q
|
1761 |
+
q
|
1762 |
+
Q
|
1763 |
+
Q
|
1764 |
+
q
|
1765 |
+
1 0 0 1 62.69291 385.0687 cm
|
1766 |
+
Q
|
1767 |
+
q
|
1768 |
+
1 0 0 1 62.69291 373.0687 cm
|
1769 |
+
0 0 0 rg
|
1770 |
+
BT /F1 10 Tf 12 TL ET
|
1771 |
+
q
|
1772 |
+
1 0 0 1 6 -3 cm
|
1773 |
+
q
|
1774 |
+
0 0 0 rg
|
1775 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (4.) Tj T* -5.66 0 Td ET
|
1776 |
+
Q
|
1777 |
+
Q
|
1778 |
+
q
|
1779 |
+
1 0 0 1 23 -3 cm
|
1780 |
+
q
|
1781 |
+
0 0 0 rg
|
1782 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Melden Sie sich im "Magento Connect Manager" an) Tj T* ET
|
1783 |
+
Q
|
1784 |
+
Q
|
1785 |
+
q
|
1786 |
+
Q
|
1787 |
+
Q
|
1788 |
+
q
|
1789 |
+
1 0 0 1 62.69291 367.0687 cm
|
1790 |
+
Q
|
1791 |
+
q
|
1792 |
+
1 0 0 1 62.69291 355.0687 cm
|
1793 |
+
0 0 0 rg
|
1794 |
+
BT /F1 10 Tf 12 TL ET
|
1795 |
+
q
|
1796 |
+
1 0 0 1 6 -3 cm
|
1797 |
+
q
|
1798 |
+
0 0 0 rg
|
1799 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (5.) Tj T* -5.66 0 Td ET
|
1800 |
+
Q
|
1801 |
+
Q
|
1802 |
+
q
|
1803 |
+
1 0 0 1 23 -3 cm
|
1804 |
+
q
|
1805 |
+
0 0 0 rg
|
1806 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (W\344hlen Sie den Tab "Extensions") Tj T* ET
|
1807 |
+
Q
|
1808 |
+
Q
|
1809 |
+
q
|
1810 |
+
Q
|
1811 |
+
Q
|
1812 |
+
q
|
1813 |
+
1 0 0 1 62.69291 349.0687 cm
|
1814 |
+
Q
|
1815 |
+
q
|
1816 |
+
1 0 0 1 62.69291 325.0687 cm
|
1817 |
+
0 0 0 rg
|
1818 |
+
BT /F1 10 Tf 12 TL ET
|
1819 |
+
q
|
1820 |
+
1 0 0 1 6 9 cm
|
1821 |
+
q
|
1822 |
+
0 0 0 rg
|
1823 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (6.) Tj T* -5.66 0 Td ET
|
1824 |
+
Q
|
1825 |
+
Q
|
1826 |
+
q
|
1827 |
+
1 0 0 1 23 -3 cm
|
1828 |
+
q
|
1829 |
+
0 0 0 rg
|
1830 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 1.14248 Tw (Tragen Sie den kopierten Key von der MagentoCommerce-Webseite in das Feld "Paste extension) Tj T* 0 Tw (key to install" ein und w\344hlen Sie "Install") Tj T* ET
|
1831 |
+
Q
|
1832 |
+
Q
|
1833 |
+
q
|
1834 |
+
Q
|
1835 |
+
Q
|
1836 |
+
q
|
1837 |
+
1 0 0 1 62.69291 319.0687 cm
|
1838 |
+
Q
|
1839 |
+
q
|
1840 |
+
1 0 0 1 62.69291 295.0687 cm
|
1841 |
+
0 0 0 rg
|
1842 |
+
BT /F1 10 Tf 12 TL ET
|
1843 |
+
q
|
1844 |
+
1 0 0 1 6 9 cm
|
1845 |
+
q
|
1846 |
+
0 0 0 rg
|
1847 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (7.) Tj T* -5.66 0 Td ET
|
1848 |
+
Q
|
1849 |
+
Q
|
1850 |
+
q
|
1851 |
+
1 0 0 1 23 -3 cm
|
1852 |
+
q
|
1853 |
+
0 0 0 rg
|
1854 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 2.020751 Tw (Unter Umst\344nden m\374ssen Sie danach die Installation mit einem Klick auf den Button "Proceed") Tj T* 0 Tw (best\344tigen.) Tj T* ET
|
1855 |
+
Q
|
1856 |
+
Q
|
1857 |
+
q
|
1858 |
+
Q
|
1859 |
+
Q
|
1860 |
+
q
|
1861 |
+
1 0 0 1 62.69291 289.0687 cm
|
1862 |
+
Q
|
1863 |
+
q
|
1864 |
+
1 0 0 1 62.69291 265.0687 cm
|
1865 |
+
0 0 0 rg
|
1866 |
+
BT /F1 10 Tf 12 TL ET
|
1867 |
+
q
|
1868 |
+
1 0 0 1 6 9 cm
|
1869 |
+
q
|
1870 |
+
0 0 0 rg
|
1871 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (8.) Tj T* -5.66 0 Td ET
|
1872 |
+
Q
|
1873 |
+
Q
|
1874 |
+
q
|
1875 |
+
1 0 0 1 23 -3 cm
|
1876 |
+
q
|
1877 |
+
0 0 0 rg
|
1878 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 3.426976 Tw (In der schwarzen Installations-Konsole sollte anschlie\337end die Meldung "Package ... installed) Tj T* 0 Tw (successfully" zu sehen sein. Das Modul ist nun korrekt installiert.) Tj T* ET
|
1879 |
+
Q
|
1880 |
+
Q
|
1881 |
+
q
|
1882 |
+
Q
|
1883 |
+
Q
|
1884 |
+
q
|
1885 |
+
1 0 0 1 62.69291 265.0687 cm
|
1886 |
+
Q
|
1887 |
+
q
|
1888 |
+
1 0 0 1 62.69291 265.0687 cm
|
1889 |
+
Q
|
1890 |
+
q
|
1891 |
+
1 0 0 1 56.69291 762.242 cm
|
1892 |
+
1 1 1 rg
|
1893 |
+
n 0 51.30135 481.8898 -51.30135 re f*
|
1894 |
+
0 0 0 rg
|
1895 |
+
BT /F1 10 Tf 12 TL ET
|
1896 |
+
q
|
1897 |
+
1 0 0 1 327.2598 3 cm
|
1898 |
+
q
|
1899 |
+
127.5591 0 0 45.30135 0 0 cm
|
1900 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f Do
|
1901 |
+
Q
|
1902 |
+
Q
|
1903 |
+
q
|
1904 |
+
1 J
|
1905 |
+
1 j
|
1906 |
+
0 0 0 RG
|
1907 |
+
.25 w
|
1908 |
+
n 321.2598 0 m 321.2598 51.30135 l S
|
1909 |
+
n 0 51.30135 m 481.8898 51.30135 l S
|
1910 |
+
n 0 0 m 481.8898 0 l S
|
1911 |
+
n 0 0 m 0 51.30135 l S
|
1912 |
+
n 481.8898 0 m 481.8898 51.30135 l S
|
1913 |
+
Q
|
1914 |
+
Q
|
1915 |
+
q
|
1916 |
+
1 0 0 1 56.69291 56.69291 cm
|
1917 |
+
0 0 0 rg
|
1918 |
+
BT /F1 10 Tf 12 TL ET
|
1919 |
+
q
|
1920 |
+
1 0 0 1 6 39 cm
|
1921 |
+
q
|
1922 |
+
0 0 0 rg
|
1923 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 3 / 9 - 05/01/2015) Tj T* ET
|
1924 |
+
Q
|
1925 |
+
Q
|
1926 |
+
q
|
1927 |
+
1 0 0 1 6 27 cm
|
1928 |
+
q
|
1929 |
+
0 0 0 rg
|
1930 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright ExperCash \251 2015.) Tj T* ET
|
1931 |
+
Q
|
1932 |
+
Q
|
1933 |
+
q
|
1934 |
+
1 0 0 1 6 15 cm
|
1935 |
+
q
|
1936 |
+
0 0 0 rg
|
1937 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
1938 |
+
Q
|
1939 |
+
Q
|
1940 |
+
q
|
1941 |
+
1 0 0 1 6 3 cm
|
1942 |
+
q
|
1943 |
+
0 0 0 rg
|
1944 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
1945 |
+
Q
|
1946 |
+
Q
|
1947 |
+
q
|
1948 |
+
Q
|
1949 |
+
Q
|
1950 |
+
|
1951 |
+
endstream
|
1952 |
+
endobj
|
1953 |
+
% 'R55': class PDFStream
|
1954 |
+
55 0 obj
|
1955 |
+
% page stream
|
1956 |
+
<< /Length 7990 >>
|
1957 |
+
stream
|
1958 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
1959 |
+
q
|
1960 |
+
1 0 0 1 62.69291 721.0687 cm
|
1961 |
+
q
|
1962 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (4 Konfiguration) Tj T* ET
|
1963 |
+
Q
|
1964 |
+
Q
|
1965 |
+
q
|
1966 |
+
1 0 0 1 62.69291 691.0687 cm
|
1967 |
+
q
|
1968 |
+
BT 1 0 0 1 0 14 Tm .043314 Tw 12 TL /F1 10 Tf 0 0 0 rg (Die Konfiguration des ExperCash Moduls zur Bonit\344tspr\374fung erreichen Sie unter System -) Tj (> Konfiguration) Tj T* 0 Tw (-) Tj (> Kunden -) Tj (> Bonit\344tspr\374fung.) Tj T* ET
|
1969 |
+
Q
|
1970 |
+
Q
|
1971 |
+
q
|
1972 |
+
1 0 0 1 62.69291 661.0687 cm
|
1973 |
+
q
|
1974 |
+
0 0 0 rg
|
1975 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 1.083615 Tw (Dieser Bereich gliedert sich in sechs Unterbreiche auf, deren Konfigurationseinstellungen im Folgenden) Tj T* 0 Tw (n\344her erl\344utert werden.) Tj T* ET
|
1976 |
+
Q
|
1977 |
+
Q
|
1978 |
+
q
|
1979 |
+
1 0 0 1 62.69291 631.0687 cm
|
1980 |
+
q
|
1981 |
+
BT 1 0 0 1 0 3 Tm 18 TL /F2 15 Tf 0 .533333 .603922 rg (4.1 Allgemeine Einstellungen) Tj T* ET
|
1982 |
+
Q
|
1983 |
+
Q
|
1984 |
+
q
|
1985 |
+
1 0 0 1 62.69291 589.0687 cm
|
1986 |
+
q
|
1987 |
+
0 0 0 rg
|
1988 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 2.79748 Tw (Unter den allgemeinen Einstellungen finden Sie die Optionen, die zum Ansprechen der ExperCash) Tj T* 0 Tw 1.137976 Tw (Schnittstelle n\366tig sind sowie die M\366glichkeit zus\344tzlichen Text der Einwilligungserkl\344rung hinzuzuf\374gen) Tj T* 0 Tw (und das Logging zu aktivieren.) Tj T* ET
|
1989 |
+
Q
|
1990 |
+
Q
|
1991 |
+
q
|
1992 |
+
1 0 0 1 62.69291 583.0687 cm
|
1993 |
+
Q
|
1994 |
+
q
|
1995 |
+
1 0 0 1 62.69291 571.0687 cm
|
1996 |
+
q
|
1997 |
+
0 0 0 rg
|
1998 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
1999 |
+
Q
|
2000 |
+
Q
|
2001 |
+
q
|
2002 |
+
1 0 0 1 62.69291 571.0687 cm
|
2003 |
+
Q
|
2004 |
+
q
|
2005 |
+
1 0 0 1 62.69291 565.0687 cm
|
2006 |
+
Q
|
2007 |
+
q
|
2008 |
+
1 0 0 1 62.69291 331.0687 cm
|
2009 |
+
1 1 1 rg
|
2010 |
+
n 0 234 469.8898 -18 re f*
|
2011 |
+
.878431 .878431 .878431 rg
|
2012 |
+
n 0 216 469.8898 -18 re f*
|
2013 |
+
1 1 1 rg
|
2014 |
+
n 0 198 469.8898 -18 re f*
|
2015 |
+
.878431 .878431 .878431 rg
|
2016 |
+
n 0 180 469.8898 -30 re f*
|
2017 |
+
1 1 1 rg
|
2018 |
+
n 0 150 469.8898 -42 re f*
|
2019 |
+
.878431 .878431 .878431 rg
|
2020 |
+
n 0 108 469.8898 -54 re f*
|
2021 |
+
1 1 1 rg
|
2022 |
+
n 0 54 469.8898 -54 re f*
|
2023 |
+
.960784 .960784 .862745 rg
|
2024 |
+
n 0 234 469.8898 -18 re f*
|
2025 |
+
0 .533333 .603922 rg
|
2026 |
+
BT /F1 10 Tf 12 TL ET
|
2027 |
+
q
|
2028 |
+
1 0 0 1 6 219 cm
|
2029 |
+
q
|
2030 |
+
.960784 .960784 .862745 rg
|
2031 |
+
n 0 0 116.1518 12 re f*
|
2032 |
+
Q
|
2033 |
+
q
|
2034 |
+
0 .533333 .603922 rg
|
2035 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 28.61588 0 Td (Konfiguration) Tj T* -28.61588 0 Td ET
|
2036 |
+
Q
|
2037 |
+
Q
|
2038 |
+
q
|
2039 |
+
1 0 0 1 134.1518 219 cm
|
2040 |
+
q
|
2041 |
+
.960784 .960784 .862745 rg
|
2042 |
+
n 0 0 329.738 12 re f*
|
2043 |
+
Q
|
2044 |
+
q
|
2045 |
+
0 .533333 .603922 rg
|
2046 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 134.299 0 Td (Beschreibung) Tj T* -134.299 0 Td ET
|
2047 |
+
Q
|
2048 |
+
Q
|
2049 |
+
0 0 0 rg
|
2050 |
+
q
|
2051 |
+
1 0 0 1 6 201 cm
|
2052 |
+
q
|
2053 |
+
0 0 0 rg
|
2054 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Aktiviert) Tj T* ET
|
2055 |
+
Q
|
2056 |
+
Q
|
2057 |
+
q
|
2058 |
+
1 0 0 1 134.1518 201 cm
|
2059 |
+
q
|
2060 |
+
0 0 0 rg
|
2061 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Stellen Sie diese Option auf "Ja" um das Modul zu aktivieren) Tj T* ET
|
2062 |
+
Q
|
2063 |
+
Q
|
2064 |
+
q
|
2065 |
+
1 0 0 1 6 183 cm
|
2066 |
+
q
|
2067 |
+
0 0 0 rg
|
2068 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Project-ID) Tj T* ET
|
2069 |
+
Q
|
2070 |
+
Q
|
2071 |
+
q
|
2072 |
+
1 0 0 1 134.1518 183 cm
|
2073 |
+
q
|
2074 |
+
0 0 0 rg
|
2075 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Den Project-ID entnehmen Sie bitte Ihren ExperCash Zugangsdaten) Tj T* ET
|
2076 |
+
Q
|
2077 |
+
Q
|
2078 |
+
q
|
2079 |
+
1 0 0 1 6 153 cm
|
2080 |
+
q
|
2081 |
+
0 0 0 rg
|
2082 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL (Sicherheitsschl\374ssel) Tj T* (Gateway \(epi\)) Tj T* ET
|
2083 |
+
Q
|
2084 |
+
Q
|
2085 |
+
q
|
2086 |
+
1 0 0 1 134.1518 153 cm
|
2087 |
+
q
|
2088 |
+
0 0 0 rg
|
2089 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL (Den Sicherheitsschl\374ssel Gateway \(epi\) entnehmen Sie bitte Ihren) Tj T* (ExperCash Zugangsdaten) Tj T* ET
|
2090 |
+
Q
|
2091 |
+
Q
|
2092 |
+
q
|
2093 |
+
1 0 0 1 6 135 cm
|
2094 |
+
q
|
2095 |
+
0 0 0 rg
|
2096 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Einwilligungsbest\344tigung) Tj T* ET
|
2097 |
+
Q
|
2098 |
+
Q
|
2099 |
+
q
|
2100 |
+
1 0 0 1 134.1518 111 cm
|
2101 |
+
q
|
2102 |
+
0 0 0 rg
|
2103 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL (Hier k\366nnen Sie einen zus\344tzlichen Text eingeben, der zus\344tzlich zum) Tj T* (Best\344tigungstext der Bonit\344tspr\374fung durch ExperCash Ihrem Kunden) Tj T* (angezeigt werden soll) Tj T* ET
|
2104 |
+
Q
|
2105 |
+
Q
|
2106 |
+
q
|
2107 |
+
1 0 0 1 6 81 cm
|
2108 |
+
q
|
2109 |
+
0 0 0 rg
|
2110 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL (F\374hre Bonit\344tspr\374fung f\374r) Tj T* (folgende L\344nder durch) Tj T* ET
|
2111 |
+
Q
|
2112 |
+
Q
|
2113 |
+
q
|
2114 |
+
1 0 0 1 134.1518 81 cm
|
2115 |
+
q
|
2116 |
+
0 0 0 rg
|
2117 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL (Hier k\366nnen Sie die L\344nder einstellen, f\374r die eine Bonit\344tspr\374fung) Tj T* (durchgef\374hrt werden soll.) Tj T* ET
|
2118 |
+
Q
|
2119 |
+
Q
|
2120 |
+
q
|
2121 |
+
1 0 0 1 134.1518 57 cm
|
2122 |
+
q
|
2123 |
+
BT 1 0 0 1 0 14 Tm 12 TL /F2 10 Tf 0 0 0 rg (Bitte beachten: ) Tj /F1 10 Tf (Momentan steht die Bonit\344tspr\374fung nur f\374r Deutschland) Tj T* (zur Verf\374gung, weshalb diese Option deaktiviert ist.) Tj T* ET
|
2124 |
+
Q
|
2125 |
+
Q
|
2126 |
+
q
|
2127 |
+
1 0 0 1 6 39 cm
|
2128 |
+
q
|
2129 |
+
0 0 0 rg
|
2130 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Log aktivieren) Tj T* ET
|
2131 |
+
Q
|
2132 |
+
Q
|
2133 |
+
q
|
2134 |
+
1 0 0 1 134.1518 3 cm
|
2135 |
+
q
|
2136 |
+
BT 1 0 0 1 0 38 Tm 12 TL /F1 10 Tf 0 0 0 rg (Ist diese Option aktiviert, werden zu Debugzwecken sowohl die Anfragen) Tj T* (an als auch die Antworten von der ExperCash Schnittstelle protokolliert.) Tj T* (Die Logdatei befindet sich unter) Tj T* (<) Tj (Magento-Verzeichnis) Tj (>) Tj (/var/log/expercash_scoring.log) Tj T* ET
|
2137 |
+
Q
|
2138 |
+
Q
|
2139 |
+
q
|
2140 |
+
1 J
|
2141 |
+
1 j
|
2142 |
+
0 0 0 RG
|
2143 |
+
.25 w
|
2144 |
+
n 0 216 m 469.8898 216 l S
|
2145 |
+
n 0 198 m 469.8898 198 l S
|
2146 |
+
n 0 180 m 469.8898 180 l S
|
2147 |
+
n 0 150 m 469.8898 150 l S
|
2148 |
+
n 0 108 m 469.8898 108 l S
|
2149 |
+
n 0 54 m 469.8898 54 l S
|
2150 |
+
n 128.1518 0 m 128.1518 234 l S
|
2151 |
+
n 0 234 m 469.8898 234 l S
|
2152 |
+
n 0 0 m 469.8898 0 l S
|
2153 |
+
n 0 0 m 0 234 l S
|
2154 |
+
n 469.8898 0 m 469.8898 234 l S
|
2155 |
+
Q
|
2156 |
+
Q
|
2157 |
+
q
|
2158 |
+
1 0 0 1 62.69291 331.0687 cm
|
2159 |
+
Q
|
2160 |
+
q
|
2161 |
+
1 0 0 1 62.69291 301.0687 cm
|
2162 |
+
q
|
2163 |
+
BT 1 0 0 1 0 3 Tm 18 TL /F2 15 Tf 0 .533333 .603922 rg (4.2 Einstellungen zur Bonit\344tspr\374fung) Tj T* ET
|
2164 |
+
Q
|
2165 |
+
Q
|
2166 |
+
q
|
2167 |
+
1 0 0 1 62.69291 271.0687 cm
|
2168 |
+
q
|
2169 |
+
0 0 0 rg
|
2170 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL .06248 Tw (Geben Sie in diesem Abschnitt an, unter welchen Bedingungen eine Bonit\344tspr\374fung durchgef\374hrt werden) Tj T* 0 Tw (soll.) Tj T* ET
|
2171 |
+
Q
|
2172 |
+
Q
|
2173 |
+
q
|
2174 |
+
1 0 0 1 62.69291 265.0687 cm
|
2175 |
+
Q
|
2176 |
+
q
|
2177 |
+
1 0 0 1 62.69291 253.0687 cm
|
2178 |
+
q
|
2179 |
+
0 0 0 rg
|
2180 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
2181 |
+
Q
|
2182 |
+
Q
|
2183 |
+
q
|
2184 |
+
1 0 0 1 62.69291 253.0687 cm
|
2185 |
+
Q
|
2186 |
+
q
|
2187 |
+
1 0 0 1 62.69291 247.0687 cm
|
2188 |
+
Q
|
2189 |
+
q
|
2190 |
+
1 0 0 1 62.69291 175.0687 cm
|
2191 |
+
1 1 1 rg
|
2192 |
+
n 0 72 469.8898 -18 re f*
|
2193 |
+
.878431 .878431 .878431 rg
|
2194 |
+
n 0 54 469.8898 -54 re f*
|
2195 |
+
.960784 .960784 .862745 rg
|
2196 |
+
n 0 72 469.8898 -18 re f*
|
2197 |
+
0 .533333 .603922 rg
|
2198 |
+
BT /F1 10 Tf 12 TL ET
|
2199 |
+
q
|
2200 |
+
1 0 0 1 6 57 cm
|
2201 |
+
q
|
2202 |
+
.960784 .960784 .862745 rg
|
2203 |
+
n 0 0 116.1518 12 re f*
|
2204 |
+
Q
|
2205 |
+
q
|
2206 |
+
0 .533333 .603922 rg
|
2207 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 28.61588 0 Td (Konfiguration) Tj T* -28.61588 0 Td ET
|
2208 |
+
Q
|
2209 |
+
Q
|
2210 |
+
q
|
2211 |
+
1 0 0 1 134.1518 57 cm
|
2212 |
+
q
|
2213 |
+
.960784 .960784 .862745 rg
|
2214 |
+
n 0 0 329.738 12 re f*
|
2215 |
+
Q
|
2216 |
+
q
|
2217 |
+
0 .533333 .603922 rg
|
2218 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 134.299 0 Td (Beschreibung) Tj T* -134.299 0 Td ET
|
2219 |
+
Q
|
2220 |
+
Q
|
2221 |
+
0 0 0 rg
|
2222 |
+
q
|
2223 |
+
1 0 0 1 6 15 cm
|
2224 |
+
q
|
2225 |
+
0 0 0 rg
|
2226 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL (Mindestbetrag um eine) Tj T* (Bonit\344tspr\374fung) Tj T* (durchf\374hren zu k\366nnen) Tj T* ET
|
2227 |
+
Q
|
2228 |
+
Q
|
2229 |
+
q
|
2230 |
+
1 0 0 1 134.1518 27 cm
|
2231 |
+
q
|
2232 |
+
0 0 0 rg
|
2233 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL (Geben Sie hier den Mindestbetrag ein, der erreicht sein muss, um eine) Tj T* (Bonit\344tspr\374fung durchzuf\374hren) Tj T* ET
|
2234 |
+
Q
|
2235 |
+
Q
|
2236 |
+
q
|
2237 |
+
1 0 0 1 134.1518 3 cm
|
2238 |
+
q
|
2239 |
+
BT 1 0 0 1 0 14 Tm 12 TL /F2 10 Tf 0 0 0 rg (Bitte beachten: ) Tj /F1 10 Tf (dieser Betrag richtet sich nach der Basisw\344hrung des) Tj T* (Shops) Tj T* ET
|
2240 |
+
Q
|
2241 |
+
Q
|
2242 |
+
q
|
2243 |
+
1 J
|
2244 |
+
1 j
|
2245 |
+
0 0 0 RG
|
2246 |
+
.25 w
|
2247 |
+
n 0 0 m 469.8898 0 l S
|
2248 |
+
n 0 54 m 469.8898 54 l S
|
2249 |
+
n 128.1518 0 m 128.1518 72 l S
|
2250 |
+
n 0 72 m 469.8898 72 l S
|
2251 |
+
n 0 0 m 0 72 l S
|
2252 |
+
n 469.8898 0 m 469.8898 72 l S
|
2253 |
+
Q
|
2254 |
+
Q
|
2255 |
+
q
|
2256 |
+
1 0 0 1 56.69291 762.242 cm
|
2257 |
+
1 1 1 rg
|
2258 |
+
n 0 51.30135 481.8898 -51.30135 re f*
|
2259 |
+
0 0 0 rg
|
2260 |
+
BT /F1 10 Tf 12 TL ET
|
2261 |
+
q
|
2262 |
+
1 0 0 1 327.2598 3 cm
|
2263 |
+
q
|
2264 |
+
127.5591 0 0 45.30135 0 0 cm
|
2265 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f Do
|
2266 |
+
Q
|
2267 |
+
Q
|
2268 |
+
q
|
2269 |
+
1 J
|
2270 |
+
1 j
|
2271 |
+
0 0 0 RG
|
2272 |
+
.25 w
|
2273 |
+
n 321.2598 0 m 321.2598 51.30135 l S
|
2274 |
+
n 0 51.30135 m 481.8898 51.30135 l S
|
2275 |
+
n 0 0 m 481.8898 0 l S
|
2276 |
+
n 0 0 m 0 51.30135 l S
|
2277 |
+
n 481.8898 0 m 481.8898 51.30135 l S
|
2278 |
+
Q
|
2279 |
+
Q
|
2280 |
+
q
|
2281 |
+
1 0 0 1 56.69291 56.69291 cm
|
2282 |
+
0 0 0 rg
|
2283 |
+
BT /F1 10 Tf 12 TL ET
|
2284 |
+
q
|
2285 |
+
1 0 0 1 6 39 cm
|
2286 |
+
q
|
2287 |
+
0 0 0 rg
|
2288 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 4 / 9 - 05/01/2015) Tj T* ET
|
2289 |
+
Q
|
2290 |
+
Q
|
2291 |
+
q
|
2292 |
+
1 0 0 1 6 27 cm
|
2293 |
+
q
|
2294 |
+
0 0 0 rg
|
2295 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright ExperCash \251 2015.) Tj T* ET
|
2296 |
+
Q
|
2297 |
+
Q
|
2298 |
+
q
|
2299 |
+
1 0 0 1 6 15 cm
|
2300 |
+
q
|
2301 |
+
0 0 0 rg
|
2302 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
2303 |
+
Q
|
2304 |
+
Q
|
2305 |
+
q
|
2306 |
+
1 0 0 1 6 3 cm
|
2307 |
+
q
|
2308 |
+
0 0 0 rg
|
2309 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
2310 |
+
Q
|
2311 |
+
Q
|
2312 |
+
q
|
2313 |
+
Q
|
2314 |
+
Q
|
2315 |
+
|
2316 |
+
endstream
|
2317 |
+
endobj
|
2318 |
+
% 'R56': class PDFStream
|
2319 |
+
56 0 obj
|
2320 |
+
% page stream
|
2321 |
+
<< /Length 8176 >>
|
2322 |
+
stream
|
2323 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
2324 |
+
q
|
2325 |
+
1 0 0 1 62.69291 496.0687 cm
|
2326 |
+
1 1 1 rg
|
2327 |
+
n 0 246 469.8898 -78 re f*
|
2328 |
+
.878431 .878431 .878431 rg
|
2329 |
+
n 0 168 469.8898 -78 re f*
|
2330 |
+
1 1 1 rg
|
2331 |
+
n 0 90 469.8898 -90 re f*
|
2332 |
+
0 0 0 rg
|
2333 |
+
BT /F1 10 Tf 12 TL ET
|
2334 |
+
q
|
2335 |
+
1 0 0 1 6 207 cm
|
2336 |
+
q
|
2337 |
+
0 0 0 rg
|
2338 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL (F\374r diese Kundengruppen) Tj T* (keine Bonit\344tspr\374fung) Tj T* (durchf\374hren) Tj T* ET
|
2339 |
+
Q
|
2340 |
+
Q
|
2341 |
+
q
|
2342 |
+
1 0 0 1 134.1518 207 cm
|
2343 |
+
q
|
2344 |
+
BT 1 0 0 1 0 26 Tm 12 TL /F1 10 Tf 0 0 0 rg (Geben Sie hier die Kundengruppen an, f\374r die ) Tj /F2 10 Tf (keine ) Tj /F1 10 Tf (Bonit\344tspr\374fung) Tj T* (durchgef\374hrt werden soll. Soll f\374r alle Kundengruppen eine) Tj T* (Bonit\344tspr\374fung durchgef\374hrt werden, w\344hlen Sie bitte '-- bitte w\344hlen --'.) Tj T* ET
|
2345 |
+
Q
|
2346 |
+
Q
|
2347 |
+
q
|
2348 |
+
1 0 0 1 134.1518 171 cm
|
2349 |
+
q
|
2350 |
+
BT 1 0 0 1 0 26 Tm 12 TL /F2 10 Tf 0 0 0 rg (Bitte beachten: ) Tj /F1 10 Tf (G\344ste sind keiner der genannten Gruppen zugeordnet,) Tj T* (d.h. f\374r diese wird also immer eine Bonit\344tspr\374fung durchgef\374hrt, sofern) Tj T* (alle anderen Bedingungen zutreffend sind) Tj T* ET
|
2351 |
+
Q
|
2352 |
+
Q
|
2353 |
+
q
|
2354 |
+
1 0 0 1 6 117 cm
|
2355 |
+
q
|
2356 |
+
0 0 0 rg
|
2357 |
+
BT 1 0 0 1 0 38 Tm /F1 10 Tf 12 TL (Wenn kein Ergebnis) Tj T* (ermittelt werden konnte,) Tj T* (ordne Kunden folgenden) Tj T* (Ampelwert zu) Tj T* ET
|
2358 |
+
Q
|
2359 |
+
Q
|
2360 |
+
q
|
2361 |
+
1 0 0 1 134.1518 93 cm
|
2362 |
+
q
|
2363 |
+
0 0 0 rg
|
2364 |
+
BT 1 0 0 1 0 62 Tm /F1 10 Tf 12 TL (Sollte durch die Schnittstelle kein Ergebnis zugeordnet werden k\366nnen,) Tj T* (wird dem Kunden automatisch der hier konfiguierte Wert zugewiesen. Soll) Tj T* (dem Kunden kein Wert zugewisen werden w\344hlen Sie bitte 'keine'. Dieser) Tj T* (Wert wird nicht verwendet, wenn f\374r den Kunden innerhalb der letzten X) Tj T* (Tage eine Bonit\344tspr\374fung durchgef\374hrt wurde und die entsprechende) Tj T* (Option aktiviert ist.) Tj T* ET
|
2365 |
+
Q
|
2366 |
+
Q
|
2367 |
+
q
|
2368 |
+
1 0 0 1 6 63 cm
|
2369 |
+
q
|
2370 |
+
0 0 0 rg
|
2371 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL (Die folgenden Zahlarten) Tj T* (immer anbieten) Tj T* ET
|
2372 |
+
Q
|
2373 |
+
Q
|
2374 |
+
q
|
2375 |
+
1 0 0 1 134.1518 27 cm
|
2376 |
+
q
|
2377 |
+
0 0 0 rg
|
2378 |
+
BT 1 0 0 1 0 50 Tm /F1 10 Tf 12 TL (Diese Option bestimmt die Zahlarten, die unabh\344ngig vom Ergebnis der) Tj T* (Bonit\344tspr\374fung Ihrem Kunden angeboten werden, sofern die weitere) Tj T* (Konfiguration der Zahlart \(aktiviert, L\344ndereinschr\344nkung usw.\) dies) Tj T* (zul\344sst. Z.B. werden diese Zahlarten Ihrem Kunden angeboten, wenn) Tj T* (dieser der Durchf\374hrung der Bonit\344tspr\374fung nicht zustimmt.) Tj T* ET
|
2379 |
+
Q
|
2380 |
+
Q
|
2381 |
+
q
|
2382 |
+
1 0 0 1 134.1518 3 cm
|
2383 |
+
q
|
2384 |
+
BT 1 0 0 1 0 14 Tm 12 TL /F2 10 Tf 0 0 0 rg (Bitte beachten: ) Tj /F1 10 Tf (Diese Zahlarten werden auch dann angeboten, wenn sie) Tj T* (durch die Ampelwerte ausgeblendet werden sollten.) Tj T* ET
|
2385 |
+
Q
|
2386 |
+
Q
|
2387 |
+
q
|
2388 |
+
1 J
|
2389 |
+
1 j
|
2390 |
+
0 0 0 RG
|
2391 |
+
.25 w
|
2392 |
+
n 0 246 m 469.8898 246 l S
|
2393 |
+
n 0 168 m 469.8898 168 l S
|
2394 |
+
n 0 90 m 469.8898 90 l S
|
2395 |
+
n 128.1518 0 m 128.1518 246 l S
|
2396 |
+
n 0 0 m 0 246 l S
|
2397 |
+
n 469.8898 0 m 469.8898 246 l S
|
2398 |
+
n 0 0 m 469.8898 0 l S
|
2399 |
+
Q
|
2400 |
+
Q
|
2401 |
+
q
|
2402 |
+
1 0 0 1 62.69291 496.0687 cm
|
2403 |
+
Q
|
2404 |
+
q
|
2405 |
+
1 0 0 1 62.69291 466.0687 cm
|
2406 |
+
q
|
2407 |
+
BT 1 0 0 1 0 3 Tm 18 TL /F2 15 Tf 0 .533333 .603922 rg (4.3 G\374ltigkeit des Ergebnisses) Tj T* ET
|
2408 |
+
Q
|
2409 |
+
Q
|
2410 |
+
q
|
2411 |
+
1 0 0 1 62.69291 436.0687 cm
|
2412 |
+
q
|
2413 |
+
0 0 0 rg
|
2414 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 1.603555 Tw (Geben Sie in diesem Abschnitt an, wieviele Pr\374fungen durchgef\374hrt werden sollen und wie lange das) Tj T* 0 Tw (Ergebnis seine G\374ltigkeit behalten soll.) Tj T* ET
|
2415 |
+
Q
|
2416 |
+
Q
|
2417 |
+
q
|
2418 |
+
1 0 0 1 62.69291 430.0687 cm
|
2419 |
+
Q
|
2420 |
+
q
|
2421 |
+
1 0 0 1 62.69291 418.0687 cm
|
2422 |
+
q
|
2423 |
+
0 0 0 rg
|
2424 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
2425 |
+
Q
|
2426 |
+
Q
|
2427 |
+
q
|
2428 |
+
1 0 0 1 62.69291 418.0687 cm
|
2429 |
+
Q
|
2430 |
+
q
|
2431 |
+
1 0 0 1 62.69291 412.0687 cm
|
2432 |
+
Q
|
2433 |
+
q
|
2434 |
+
1 0 0 1 62.69291 136.0687 cm
|
2435 |
+
1 1 1 rg
|
2436 |
+
n 0 276 469.8898 -18 re f*
|
2437 |
+
.878431 .878431 .878431 rg
|
2438 |
+
n 0 258 469.8898 -42 re f*
|
2439 |
+
1 1 1 rg
|
2440 |
+
n 0 216 469.8898 -66 re f*
|
2441 |
+
.878431 .878431 .878431 rg
|
2442 |
+
n 0 150 469.8898 -42 re f*
|
2443 |
+
1 1 1 rg
|
2444 |
+
n 0 108 469.8898 -66 re f*
|
2445 |
+
.878431 .878431 .878431 rg
|
2446 |
+
n 0 42 469.8898 -42 re f*
|
2447 |
+
.960784 .960784 .862745 rg
|
2448 |
+
n 0 276 469.8898 -18 re f*
|
2449 |
+
0 .533333 .603922 rg
|
2450 |
+
BT /F1 10 Tf 12 TL ET
|
2451 |
+
q
|
2452 |
+
1 0 0 1 6 261 cm
|
2453 |
+
q
|
2454 |
+
.960784 .960784 .862745 rg
|
2455 |
+
n 0 0 116.1518 12 re f*
|
2456 |
+
Q
|
2457 |
+
q
|
2458 |
+
0 .533333 .603922 rg
|
2459 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 28.61588 0 Td (Konfiguration) Tj T* -28.61588 0 Td ET
|
2460 |
+
Q
|
2461 |
+
Q
|
2462 |
+
q
|
2463 |
+
1 0 0 1 134.1518 261 cm
|
2464 |
+
q
|
2465 |
+
.960784 .960784 .862745 rg
|
2466 |
+
n 0 0 329.738 12 re f*
|
2467 |
+
Q
|
2468 |
+
q
|
2469 |
+
0 .533333 .603922 rg
|
2470 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 134.299 0 Td (Beschreibung) Tj T* -134.299 0 Td ET
|
2471 |
+
Q
|
2472 |
+
Q
|
2473 |
+
0 0 0 rg
|
2474 |
+
q
|
2475 |
+
1 0 0 1 6 219 cm
|
2476 |
+
q
|
2477 |
+
0 0 0 rg
|
2478 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL (Maximale Anzahl an) Tj T* (Bonit\344tspr\374fungen pro) Tj T* (Session) Tj T* ET
|
2479 |
+
Q
|
2480 |
+
Q
|
2481 |
+
q
|
2482 |
+
1 0 0 1 134.1518 219 cm
|
2483 |
+
q
|
2484 |
+
0 0 0 rg
|
2485 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL (Geben Sie hier an, wieviele Anfragen pro Checkout-Session an die) Tj T* (ExperCash Schnittstelle gesendet werden d\374rfen. Kein Wert bedeutet,) Tj T* (dass immer eine Anfrage gesendet wird.) Tj T* ET
|
2486 |
+
Q
|
2487 |
+
Q
|
2488 |
+
q
|
2489 |
+
1 0 0 1 6 153 cm
|
2490 |
+
q
|
2491 |
+
0 0 0 rg
|
2492 |
+
BT 1 0 0 1 0 50 Tm /F1 10 Tf 12 TL (Falls die maximale Anzahl) Tj T* (an Pr\374fungen pro Session) Tj T* (\374berschritten ist, ordne) Tj T* (den Kunden folgenden) Tj T* (Ampelwert zu) Tj T* ET
|
2493 |
+
Q
|
2494 |
+
Q
|
2495 |
+
q
|
2496 |
+
1 0 0 1 134.1518 165 cm
|
2497 |
+
q
|
2498 |
+
0 0 0 rg
|
2499 |
+
BT 1 0 0 1 0 38 Tm /F1 10 Tf 12 TL (Diese Einstellung erm\366glicht es, dem Kunden einen Standardwert) Tj T* (zuzuordnen, wenn die Anzahl der zul\344ssigen Pr\374fungen pro Session) Tj T* (\374berschritten ist. Dieser Wert ist so lange g\374ltig, wie die Session des) Tj T* (Kunden besteht.) Tj T* ET
|
2500 |
+
Q
|
2501 |
+
Q
|
2502 |
+
q
|
2503 |
+
1 0 0 1 6 123 cm
|
2504 |
+
q
|
2505 |
+
0 0 0 rg
|
2506 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL (Maximale Anzahl an) Tj T* (Pr\374fungen pro Tag) Tj T* ET
|
2507 |
+
Q
|
2508 |
+
Q
|
2509 |
+
q
|
2510 |
+
1 0 0 1 134.1518 111 cm
|
2511 |
+
q
|
2512 |
+
0 0 0 rg
|
2513 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL (Geben Sie hier an, wieviele Bonit\344tspr\374fungen pro Tag durchgef\374hrt) Tj T* (werden sollen. Diese Angabe bezieht sich auf die Gesamtzahl der) Tj T* (Pr\374fungen des gesamten Shops.) Tj T* ET
|
2514 |
+
Q
|
2515 |
+
Q
|
2516 |
+
q
|
2517 |
+
1 0 0 1 6 45 cm
|
2518 |
+
q
|
2519 |
+
0 0 0 rg
|
2520 |
+
BT 1 0 0 1 0 50 Tm /F1 10 Tf 12 TL (Wenn die maximale) Tj T* (Anzahl pro Tag) Tj T* (\374berschritten ist, ordne) Tj T* (den Kunden folgenden) Tj T* (Ampelwert zu) Tj T* ET
|
2521 |
+
Q
|
2522 |
+
Q
|
2523 |
+
q
|
2524 |
+
1 0 0 1 134.1518 57 cm
|
2525 |
+
q
|
2526 |
+
0 0 0 rg
|
2527 |
+
BT 1 0 0 1 0 38 Tm /F1 10 Tf 12 TL (Diese Option ordnet Ihren Kunden automatisch den angebenen) Tj T* (Ampelwert zu, wenn die zul\344ssige Anzahl der Pr\374fungen pro Tag) Tj T* (\374berschritten ist. Dieser Wert wird f\374r den Tag f\374r alle Kunden verwendet,) Tj T* (an denen das eingestellte Limit \374berschritten ist.) Tj T* ET
|
2528 |
+
Q
|
2529 |
+
Q
|
2530 |
+
q
|
2531 |
+
1 0 0 1 6 3 cm
|
2532 |
+
q
|
2533 |
+
0 0 0 rg
|
2534 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL (Ergebnis der) Tj T* (Bonit\344tspr\374fung ist f\374r X) Tj T* (Tage g\374ltig) Tj T* ET
|
2535 |
+
Q
|
2536 |
+
Q
|
2537 |
+
q
|
2538 |
+
1 0 0 1 134.1518 3 cm
|
2539 |
+
q
|
2540 |
+
0 0 0 rg
|
2541 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL (Geben Sie an ob nach X Tagen eine erneute Bonit\344tspr\374fung) Tj T* (durchgef\374hrt werden soll. Steht diese Option auf 'nein', so bei jedem) Tj T* (Checkout eine neue Bonit\344tspr\374fung durchgef\374hrt.) Tj T* ET
|
2542 |
+
Q
|
2543 |
+
Q
|
2544 |
+
q
|
2545 |
+
1 J
|
2546 |
+
1 j
|
2547 |
+
0 0 0 RG
|
2548 |
+
.25 w
|
2549 |
+
n 0 0 m 469.8898 0 l S
|
2550 |
+
n 0 258 m 469.8898 258 l S
|
2551 |
+
n 0 216 m 469.8898 216 l S
|
2552 |
+
n 0 150 m 469.8898 150 l S
|
2553 |
+
n 0 108 m 469.8898 108 l S
|
2554 |
+
n 0 42 m 469.8898 42 l S
|
2555 |
+
n 128.1518 0 m 128.1518 276 l S
|
2556 |
+
n 0 276 m 469.8898 276 l S
|
2557 |
+
n 0 0 m 0 276 l S
|
2558 |
+
n 469.8898 0 m 469.8898 276 l S
|
2559 |
+
Q
|
2560 |
+
Q
|
2561 |
+
q
|
2562 |
+
1 0 0 1 56.69291 762.242 cm
|
2563 |
+
1 1 1 rg
|
2564 |
+
n 0 51.30135 481.8898 -51.30135 re f*
|
2565 |
+
0 0 0 rg
|
2566 |
+
BT /F1 10 Tf 12 TL ET
|
2567 |
+
q
|
2568 |
+
1 0 0 1 327.2598 3 cm
|
2569 |
+
q
|
2570 |
+
127.5591 0 0 45.30135 0 0 cm
|
2571 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f Do
|
2572 |
+
Q
|
2573 |
+
Q
|
2574 |
+
q
|
2575 |
+
1 J
|
2576 |
+
1 j
|
2577 |
+
0 0 0 RG
|
2578 |
+
.25 w
|
2579 |
+
n 321.2598 0 m 321.2598 51.30135 l S
|
2580 |
+
n 0 51.30135 m 481.8898 51.30135 l S
|
2581 |
+
n 0 0 m 481.8898 0 l S
|
2582 |
+
n 0 0 m 0 51.30135 l S
|
2583 |
+
n 481.8898 0 m 481.8898 51.30135 l S
|
2584 |
+
Q
|
2585 |
+
Q
|
2586 |
+
q
|
2587 |
+
1 0 0 1 56.69291 56.69291 cm
|
2588 |
+
0 0 0 rg
|
2589 |
+
BT /F1 10 Tf 12 TL ET
|
2590 |
+
q
|
2591 |
+
1 0 0 1 6 39 cm
|
2592 |
+
q
|
2593 |
+
0 0 0 rg
|
2594 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 5 / 9 - 05/01/2015) Tj T* ET
|
2595 |
+
Q
|
2596 |
+
Q
|
2597 |
+
q
|
2598 |
+
1 0 0 1 6 27 cm
|
2599 |
+
q
|
2600 |
+
0 0 0 rg
|
2601 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright ExperCash \251 2015.) Tj T* ET
|
2602 |
+
Q
|
2603 |
+
Q
|
2604 |
+
q
|
2605 |
+
1 0 0 1 6 15 cm
|
2606 |
+
q
|
2607 |
+
0 0 0 rg
|
2608 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
2609 |
+
Q
|
2610 |
+
Q
|
2611 |
+
q
|
2612 |
+
1 0 0 1 6 3 cm
|
2613 |
+
q
|
2614 |
+
0 0 0 rg
|
2615 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
2616 |
+
Q
|
2617 |
+
Q
|
2618 |
+
q
|
2619 |
+
Q
|
2620 |
+
Q
|
2621 |
+
|
2622 |
+
endstream
|
2623 |
+
endobj
|
2624 |
+
% 'R57': class PDFStream
|
2625 |
+
57 0 obj
|
2626 |
+
% page stream
|
2627 |
+
<< /Length 2106 >>
|
2628 |
+
stream
|
2629 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
2630 |
+
q
|
2631 |
+
1 0 0 1 62.69291 652.0687 cm
|
2632 |
+
1 1 1 rg
|
2633 |
+
n 0 90 469.8898 -90 re f*
|
2634 |
+
0 0 0 rg
|
2635 |
+
BT /F1 10 Tf 12 TL ET
|
2636 |
+
q
|
2637 |
+
1 0 0 1 6 51 cm
|
2638 |
+
q
|
2639 |
+
0 0 0 rg
|
2640 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL (F\374hre erneut die) Tj T* (Bonit\344tspr\374fung nach X) Tj T* (Tagen durch) Tj T* ET
|
2641 |
+
Q
|
2642 |
+
Q
|
2643 |
+
q
|
2644 |
+
1 0 0 1 134.1518 3 cm
|
2645 |
+
q
|
2646 |
+
0 0 0 rg
|
2647 |
+
BT 1 0 0 1 0 74 Tm /F1 10 Tf 12 TL (Wenn die Option 'Ergebnis der Bonit\344tspr\374fung ist f\374r X Tage g\374ltig') Tj T* (gew\344hlt ist und die letzte Bonit\344tspr\374fung des Kunden l\344nger als X Tage) Tj T* (zur\374ckliegt, dann wird eine erneute Anfrage an die ExperCash) Tj T* (Schnittstelle gesendet. Andernfalls wird der letzte Wert der) Tj T* (Bonit\344tspr\374fung verwendet. Dieser Wert hat auch Vorang gegen\374ber den) Tj T* (Standardwerten, wenn die Anzahl der Checks pro Session bzw. pro Tag) Tj T* (erreicht ist.) Tj T* ET
|
2648 |
+
Q
|
2649 |
+
Q
|
2650 |
+
q
|
2651 |
+
1 J
|
2652 |
+
1 j
|
2653 |
+
0 0 0 RG
|
2654 |
+
.25 w
|
2655 |
+
n 0 90 m 469.8898 90 l S
|
2656 |
+
n 128.1518 0 m 128.1518 90 l S
|
2657 |
+
n 0 0 m 0 90 l S
|
2658 |
+
n 469.8898 0 m 469.8898 90 l S
|
2659 |
+
n 0 0 m 469.8898 0 l S
|
2660 |
+
Q
|
2661 |
+
Q
|
2662 |
+
q
|
2663 |
+
1 0 0 1 62.69291 652.0687 cm
|
2664 |
+
Q
|
2665 |
+
q
|
2666 |
+
1 0 0 1 62.69291 652.0687 cm
|
2667 |
+
Q
|
2668 |
+
q
|
2669 |
+
1 0 0 1 56.69291 762.242 cm
|
2670 |
+
1 1 1 rg
|
2671 |
+
n 0 51.30135 481.8898 -51.30135 re f*
|
2672 |
+
0 0 0 rg
|
2673 |
+
BT /F1 10 Tf 12 TL ET
|
2674 |
+
q
|
2675 |
+
1 0 0 1 327.2598 3 cm
|
2676 |
+
q
|
2677 |
+
127.5591 0 0 45.30135 0 0 cm
|
2678 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f Do
|
2679 |
+
Q
|
2680 |
+
Q
|
2681 |
+
q
|
2682 |
+
1 J
|
2683 |
+
1 j
|
2684 |
+
0 0 0 RG
|
2685 |
+
.25 w
|
2686 |
+
n 321.2598 0 m 321.2598 51.30135 l S
|
2687 |
+
n 0 51.30135 m 481.8898 51.30135 l S
|
2688 |
+
n 0 0 m 481.8898 0 l S
|
2689 |
+
n 0 0 m 0 51.30135 l S
|
2690 |
+
n 481.8898 0 m 481.8898 51.30135 l S
|
2691 |
+
Q
|
2692 |
+
Q
|
2693 |
+
q
|
2694 |
+
1 0 0 1 56.69291 56.69291 cm
|
2695 |
+
0 0 0 rg
|
2696 |
+
BT /F1 10 Tf 12 TL ET
|
2697 |
+
q
|
2698 |
+
1 0 0 1 6 39 cm
|
2699 |
+
q
|
2700 |
+
0 0 0 rg
|
2701 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 6 / 9 - 05/01/2015) Tj T* ET
|
2702 |
+
Q
|
2703 |
+
Q
|
2704 |
+
q
|
2705 |
+
1 0 0 1 6 27 cm
|
2706 |
+
q
|
2707 |
+
0 0 0 rg
|
2708 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright ExperCash \251 2015.) Tj T* ET
|
2709 |
+
Q
|
2710 |
+
Q
|
2711 |
+
q
|
2712 |
+
1 0 0 1 6 15 cm
|
2713 |
+
q
|
2714 |
+
0 0 0 rg
|
2715 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
2716 |
+
Q
|
2717 |
+
Q
|
2718 |
+
q
|
2719 |
+
1 0 0 1 6 3 cm
|
2720 |
+
q
|
2721 |
+
0 0 0 rg
|
2722 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
2723 |
+
Q
|
2724 |
+
Q
|
2725 |
+
q
|
2726 |
+
Q
|
2727 |
+
Q
|
2728 |
+
|
2729 |
+
endstream
|
2730 |
+
endobj
|
2731 |
+
% 'R58': class PDFStream
|
2732 |
+
58 0 obj
|
2733 |
+
% page stream
|
2734 |
+
<< /Length 3733 >>
|
2735 |
+
stream
|
2736 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
2737 |
+
q
|
2738 |
+
1 0 0 1 62.69291 724.0687 cm
|
2739 |
+
q
|
2740 |
+
BT 1 0 0 1 0 3 Tm 18 TL /F2 15 Tf 0 .533333 .603922 rg (4.4 Ampelwertspezifische Konfiguration) Tj T* ET
|
2741 |
+
Q
|
2742 |
+
Q
|
2743 |
+
q
|
2744 |
+
1 0 0 1 62.69291 694.0687 cm
|
2745 |
+
q
|
2746 |
+
0 0 0 rg
|
2747 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL .40229 Tw (Geben Sie in diesen Abschnitten an, welche Zahlarten dem Kunden zum jeweiligen Ampelwert angezeigt) Tj T* 0 Tw (werden und welche Zusatzbedingung gelten muss, um den jeweiligen Ampelwert zu erreichen.) Tj T* ET
|
2748 |
+
Q
|
2749 |
+
Q
|
2750 |
+
q
|
2751 |
+
1 0 0 1 62.69291 688.0687 cm
|
2752 |
+
Q
|
2753 |
+
q
|
2754 |
+
1 0 0 1 62.69291 676.0687 cm
|
2755 |
+
q
|
2756 |
+
0 0 0 rg
|
2757 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
2758 |
+
Q
|
2759 |
+
Q
|
2760 |
+
q
|
2761 |
+
1 0 0 1 62.69291 676.0687 cm
|
2762 |
+
Q
|
2763 |
+
q
|
2764 |
+
1 0 0 1 62.69291 670.0687 cm
|
2765 |
+
Q
|
2766 |
+
q
|
2767 |
+
1 0 0 1 62.69291 544.0687 cm
|
2768 |
+
1 1 1 rg
|
2769 |
+
n 0 126 469.8898 -18 re f*
|
2770 |
+
.878431 .878431 .878431 rg
|
2771 |
+
n 0 108 469.8898 -30 re f*
|
2772 |
+
1 1 1 rg
|
2773 |
+
n 0 78 469.8898 -78 re f*
|
2774 |
+
.960784 .960784 .862745 rg
|
2775 |
+
n 0 126 469.8898 -18 re f*
|
2776 |
+
0 .533333 .603922 rg
|
2777 |
+
BT /F1 10 Tf 12 TL ET
|
2778 |
+
q
|
2779 |
+
1 0 0 1 6 111 cm
|
2780 |
+
q
|
2781 |
+
.960784 .960784 .862745 rg
|
2782 |
+
n 0 0 116.1518 12 re f*
|
2783 |
+
Q
|
2784 |
+
q
|
2785 |
+
0 .533333 .603922 rg
|
2786 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 28.61588 0 Td (Konfiguration) Tj T* -28.61588 0 Td ET
|
2787 |
+
Q
|
2788 |
+
Q
|
2789 |
+
q
|
2790 |
+
1 0 0 1 134.1518 111 cm
|
2791 |
+
q
|
2792 |
+
.960784 .960784 .862745 rg
|
2793 |
+
n 0 0 329.738 12 re f*
|
2794 |
+
Q
|
2795 |
+
q
|
2796 |
+
0 .533333 .603922 rg
|
2797 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 134.299 0 Td (Beschreibung) Tj T* -134.299 0 Td ET
|
2798 |
+
Q
|
2799 |
+
Q
|
2800 |
+
0 0 0 rg
|
2801 |
+
q
|
2802 |
+
1 0 0 1 6 81 cm
|
2803 |
+
q
|
2804 |
+
0 0 0 rg
|
2805 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL (Folgende Zahlarten) Tj T* (zulassen) Tj T* ET
|
2806 |
+
Q
|
2807 |
+
Q
|
2808 |
+
q
|
2809 |
+
1 0 0 1 134.1518 81 cm
|
2810 |
+
q
|
2811 |
+
0 0 0 rg
|
2812 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL (Geben Sie hier die Zahlarten die Sie f\374r den jeweiligen Ampelwert) Tj T* (zulassen m\366chten.) Tj T* ET
|
2813 |
+
Q
|
2814 |
+
Q
|
2815 |
+
q
|
2816 |
+
1 0 0 1 6 15 cm
|
2817 |
+
q
|
2818 |
+
0 0 0 rg
|
2819 |
+
BT 1 0 0 1 0 50 Tm /F1 10 Tf 12 TL (Zus\344tzliche Bedingung) Tj T* (die f\374r diese Gruppe) Tj T* (gelten muss \(Nur) Tj T* (Ampelwerte 'gr\374n' und) Tj T* ('gelb\)) Tj T* ET
|
2820 |
+
Q
|
2821 |
+
Q
|
2822 |
+
q
|
2823 |
+
1 0 0 1 134.1518 3 cm
|
2824 |
+
q
|
2825 |
+
0 0 0 rg
|
2826 |
+
BT 1 0 0 1 0 62 Tm /F1 10 Tf 12 TL (Neben dem eigentlichen Ampelwert kann die ExperCash Schnittstelle) Tj T* (auch noch zus\344tzliche Informationen bez\374glich des Identifikationsstatus) Tj T* (zur\374ckgeben. Geben Sie hier den Wert an, der zus\344tzlich zum Ampelwert) Tj T* (gesetzt sein muss, um diese Bonit\344tsgruppe zu erreichen. Ist der) Tj T* (konfigurierte Identifikationsstatus nicht erreicht, dann wird der Kunde der) Tj T* (n\344chstniedrigeren Bonit\344tsgruppe zugeordnet.) Tj T* ET
|
2827 |
+
Q
|
2828 |
+
Q
|
2829 |
+
q
|
2830 |
+
1 J
|
2831 |
+
1 j
|
2832 |
+
0 0 0 RG
|
2833 |
+
.25 w
|
2834 |
+
n 0 108 m 469.8898 108 l S
|
2835 |
+
n 0 78 m 469.8898 78 l S
|
2836 |
+
n 128.1518 0 m 128.1518 126 l S
|
2837 |
+
n 0 126 m 469.8898 126 l S
|
2838 |
+
n 0 0 m 469.8898 0 l S
|
2839 |
+
n 0 0 m 0 126 l S
|
2840 |
+
n 469.8898 0 m 469.8898 126 l S
|
2841 |
+
Q
|
2842 |
+
Q
|
2843 |
+
q
|
2844 |
+
1 0 0 1 62.69291 544.0687 cm
|
2845 |
+
Q
|
2846 |
+
q
|
2847 |
+
1 0 0 1 62.69291 544.0687 cm
|
2848 |
+
Q
|
2849 |
+
q
|
2850 |
+
1 0 0 1 56.69291 762.242 cm
|
2851 |
+
1 1 1 rg
|
2852 |
+
n 0 51.30135 481.8898 -51.30135 re f*
|
2853 |
+
0 0 0 rg
|
2854 |
+
BT /F1 10 Tf 12 TL ET
|
2855 |
+
q
|
2856 |
+
1 0 0 1 327.2598 3 cm
|
2857 |
+
q
|
2858 |
+
127.5591 0 0 45.30135 0 0 cm
|
2859 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f Do
|
2860 |
+
Q
|
2861 |
+
Q
|
2862 |
+
q
|
2863 |
+
1 J
|
2864 |
+
1 j
|
2865 |
+
0 0 0 RG
|
2866 |
+
.25 w
|
2867 |
+
n 321.2598 0 m 321.2598 51.30135 l S
|
2868 |
+
n 0 51.30135 m 481.8898 51.30135 l S
|
2869 |
+
n 0 0 m 481.8898 0 l S
|
2870 |
+
n 0 0 m 0 51.30135 l S
|
2871 |
+
n 481.8898 0 m 481.8898 51.30135 l S
|
2872 |
+
Q
|
2873 |
+
Q
|
2874 |
+
q
|
2875 |
+
1 0 0 1 56.69291 56.69291 cm
|
2876 |
+
0 0 0 rg
|
2877 |
+
BT /F1 10 Tf 12 TL ET
|
2878 |
+
q
|
2879 |
+
1 0 0 1 6 39 cm
|
2880 |
+
q
|
2881 |
+
0 0 0 rg
|
2882 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 7 / 9 - 05/01/2015) Tj T* ET
|
2883 |
+
Q
|
2884 |
+
Q
|
2885 |
+
q
|
2886 |
+
1 0 0 1 6 27 cm
|
2887 |
+
q
|
2888 |
+
0 0 0 rg
|
2889 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright ExperCash \251 2015.) Tj T* ET
|
2890 |
+
Q
|
2891 |
+
Q
|
2892 |
+
q
|
2893 |
+
1 0 0 1 6 15 cm
|
2894 |
+
q
|
2895 |
+
0 0 0 rg
|
2896 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
2897 |
+
Q
|
2898 |
+
Q
|
2899 |
+
q
|
2900 |
+
1 0 0 1 6 3 cm
|
2901 |
+
q
|
2902 |
+
0 0 0 rg
|
2903 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
2904 |
+
Q
|
2905 |
+
Q
|
2906 |
+
q
|
2907 |
+
Q
|
2908 |
+
Q
|
2909 |
+
|
2910 |
+
endstream
|
2911 |
+
endobj
|
2912 |
+
% 'R59': class PDFStream
|
2913 |
+
59 0 obj
|
2914 |
+
% page stream
|
2915 |
+
<< /Length 3039 >>
|
2916 |
+
stream
|
2917 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
2918 |
+
q
|
2919 |
+
1 0 0 1 62.69291 721.0687 cm
|
2920 |
+
q
|
2921 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (5 Verhalten im Checkout) Tj T* ET
|
2922 |
+
Q
|
2923 |
+
Q
|
2924 |
+
q
|
2925 |
+
1 0 0 1 62.69291 667.0687 cm
|
2926 |
+
q
|
2927 |
+
0 0 0 rg
|
2928 |
+
BT 1 0 0 1 0 38 Tm /F1 10 Tf 12 TL .977984 Tw (Ist das Modul aktiviert und verwendet der Kunde eine Rechnungsadresse aus einem der L\344nder f\374r die) Tj T* 0 Tw 2.564147 Tw (eine Bonit\344tspr\374fung laut Konfiguration durchzuf\374hren ist, so kann der Kunde der Durchf\374hrung der) Tj T* 0 Tw 1.418555 Tw (Bonit\344tspr\374fung durch ExperCash zustimmen, | Verzichtet er auf diese Pr\374fung, dann erh\344lt er nur die) Tj T* 0 Tw (Zahlarten, die immer angeboten werden sollen. Der folgende Screenshot verdeutlicht diese Auswahl:) Tj T* ET
|
2929 |
+
Q
|
2930 |
+
Q
|
2931 |
+
q
|
2932 |
+
1 0 0 1 62.69291 661.0687 cm
|
2933 |
+
Q
|
2934 |
+
q
|
2935 |
+
1 0 0 1 62.69291 649.0687 cm
|
2936 |
+
q
|
2937 |
+
0 0 0 rg
|
2938 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
2939 |
+
Q
|
2940 |
+
Q
|
2941 |
+
q
|
2942 |
+
1 0 0 1 62.69291 649.0687 cm
|
2943 |
+
Q
|
2944 |
+
q
|
2945 |
+
1 0 0 1 70.86614 481.6269 cm
|
2946 |
+
q
|
2947 |
+
453.5433 0 0 167.4419 0 0 cm
|
2948 |
+
/FormXob.34f9dd745fb73a5a42bacb0d1cc9dc52 Do
|
2949 |
+
Q
|
2950 |
+
Q
|
2951 |
+
q
|
2952 |
+
1 0 0 1 62.69291 475.6269 cm
|
2953 |
+
Q
|
2954 |
+
q
|
2955 |
+
1 0 0 1 62.69291 463.6269 cm
|
2956 |
+
q
|
2957 |
+
0 0 0 rg
|
2958 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
2959 |
+
Q
|
2960 |
+
Q
|
2961 |
+
q
|
2962 |
+
1 0 0 1 62.69291 463.6269 cm
|
2963 |
+
Q
|
2964 |
+
q
|
2965 |
+
1 0 0 1 62.69291 409.6269 cm
|
2966 |
+
q
|
2967 |
+
0 0 0 rg
|
2968 |
+
BT 1 0 0 1 0 38 Tm /F1 10 Tf 12 TL .880751 Tw (Erreicht der Kunde im weiteren Verlauf den 'Zahlungsinformation'-Schritt, so werden ihm nur die aktiven) Tj T* 0 Tw .573828 Tw (Zahlarten angezeigt, die f\374r seinen Ampelwert konfiguriert sind sowie die Zahlarten, die unabh\344ngig vom) Tj T* 0 Tw .966976 Tw (Ergebnis der Bonit\344tspr\374fung angezeigt werden sollen. Der folgende Screenshot veranschaulicht dieses) Tj T* 0 Tw (Verhalten:) Tj T* ET
|
2969 |
+
Q
|
2970 |
+
Q
|
2971 |
+
q
|
2972 |
+
1 0 0 1 62.69291 403.6269 cm
|
2973 |
+
Q
|
2974 |
+
q
|
2975 |
+
1 0 0 1 62.69291 391.6269 cm
|
2976 |
+
q
|
2977 |
+
0 0 0 rg
|
2978 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
2979 |
+
Q
|
2980 |
+
Q
|
2981 |
+
q
|
2982 |
+
1 0 0 1 62.69291 391.6269 cm
|
2983 |
+
Q
|
2984 |
+
q
|
2985 |
+
1 0 0 1 70.86614 279.7308 cm
|
2986 |
+
q
|
2987 |
+
453.5433 0 0 111.8961 0 0 cm
|
2988 |
+
/FormXob.6f6d53f435e6637bb138a00bbd123f42 Do
|
2989 |
+
Q
|
2990 |
+
Q
|
2991 |
+
q
|
2992 |
+
1 0 0 1 62.69291 279.7308 cm
|
2993 |
+
Q
|
2994 |
+
q
|
2995 |
+
1 0 0 1 56.69291 762.242 cm
|
2996 |
+
1 1 1 rg
|
2997 |
+
n 0 51.30135 481.8898 -51.30135 re f*
|
2998 |
+
0 0 0 rg
|
2999 |
+
BT /F1 10 Tf 12 TL ET
|
3000 |
+
q
|
3001 |
+
1 0 0 1 327.2598 3 cm
|
3002 |
+
q
|
3003 |
+
127.5591 0 0 45.30135 0 0 cm
|
3004 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f Do
|
3005 |
+
Q
|
3006 |
+
Q
|
3007 |
+
q
|
3008 |
+
1 J
|
3009 |
+
1 j
|
3010 |
+
0 0 0 RG
|
3011 |
+
.25 w
|
3012 |
+
n 321.2598 0 m 321.2598 51.30135 l S
|
3013 |
+
n 0 51.30135 m 481.8898 51.30135 l S
|
3014 |
+
n 0 0 m 481.8898 0 l S
|
3015 |
+
n 0 0 m 0 51.30135 l S
|
3016 |
+
n 481.8898 0 m 481.8898 51.30135 l S
|
3017 |
+
Q
|
3018 |
+
Q
|
3019 |
+
q
|
3020 |
+
1 0 0 1 56.69291 56.69291 cm
|
3021 |
+
0 0 0 rg
|
3022 |
+
BT /F1 10 Tf 12 TL ET
|
3023 |
+
q
|
3024 |
+
1 0 0 1 6 39 cm
|
3025 |
+
q
|
3026 |
+
0 0 0 rg
|
3027 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 8 / 9 - 05/01/2015) Tj T* ET
|
3028 |
+
Q
|
3029 |
+
Q
|
3030 |
+
q
|
3031 |
+
1 0 0 1 6 27 cm
|
3032 |
+
q
|
3033 |
+
0 0 0 rg
|
3034 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright ExperCash \251 2015.) Tj T* ET
|
3035 |
+
Q
|
3036 |
+
Q
|
3037 |
+
q
|
3038 |
+
1 0 0 1 6 15 cm
|
3039 |
+
q
|
3040 |
+
0 0 0 rg
|
3041 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
3042 |
+
Q
|
3043 |
+
Q
|
3044 |
+
q
|
3045 |
+
1 0 0 1 6 3 cm
|
3046 |
+
q
|
3047 |
+
0 0 0 rg
|
3048 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
3049 |
+
Q
|
3050 |
+
Q
|
3051 |
+
q
|
3052 |
+
Q
|
3053 |
+
Q
|
3054 |
+
|
3055 |
+
endstream
|
3056 |
+
endobj
|
3057 |
+
% 'R60': class PDFStream
|
3058 |
+
60 0 obj
|
3059 |
+
% page stream
|
3060 |
+
<< /Length 5546 >>
|
3061 |
+
stream
|
3062 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
3063 |
+
q
|
3064 |
+
1 0 0 1 62.69291 721.0687 cm
|
3065 |
+
q
|
3066 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (6 Kundenbereich im Backend) Tj T* ET
|
3067 |
+
Q
|
3068 |
+
Q
|
3069 |
+
q
|
3070 |
+
1 0 0 1 62.69291 655.0687 cm
|
3071 |
+
q
|
3072 |
+
BT 1 0 0 1 0 50 Tm 3.214147 Tw 12 TL /F1 10 Tf 0 0 0 rg (Im Backend haben Sie die M\366glichkeit, zu einem Kunden von ExperCash gelieferten zugeh\366rigen) Tj T* 0 Tw 2.927752 Tw (Bonit\344tsdaten einzusehen sowie korrigierten Kundendaten, sofern hier eine Korrektur vorgenommen) Tj T* 0 Tw 3.85498 Tw (wurde. Sie finden diese Information unter 'Kunden' -) Tj (> 'Kunden verwalten' -) Tj (> ') Tj (<) Tj (Kundenname) Tj (>) Tj (' -) Tj (>) Tj T* 0 Tw .933615 Tw ('Bonit\344tsdaten'. Wie im folgenden Screenshot zu sehen, sind, sofern vorhanden, folgende Informationen) Tj T* 0 Tw (zu sehen:) Tj T* ET
|
3073 |
+
Q
|
3074 |
+
Q
|
3075 |
+
q
|
3076 |
+
1 0 0 1 62.69291 649.0687 cm
|
3077 |
+
Q
|
3078 |
+
q
|
3079 |
+
1 0 0 1 62.69291 649.0687 cm
|
3080 |
+
Q
|
3081 |
+
q
|
3082 |
+
1 0 0 1 62.69291 637.0687 cm
|
3083 |
+
0 0 0 rg
|
3084 |
+
BT /F1 10 Tf 12 TL ET
|
3085 |
+
q
|
3086 |
+
1 0 0 1 6 -3 cm
|
3087 |
+
q
|
3088 |
+
0 0 0 rg
|
3089 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
3090 |
+
Q
|
3091 |
+
Q
|
3092 |
+
q
|
3093 |
+
1 0 0 1 23 -3 cm
|
3094 |
+
q
|
3095 |
+
0 0 0 rg
|
3096 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Ampelwerte der Bonit\344tspr\374fung) Tj T* ET
|
3097 |
+
Q
|
3098 |
+
Q
|
3099 |
+
q
|
3100 |
+
Q
|
3101 |
+
Q
|
3102 |
+
q
|
3103 |
+
1 0 0 1 62.69291 631.0687 cm
|
3104 |
+
Q
|
3105 |
+
q
|
3106 |
+
1 0 0 1 62.69291 619.0687 cm
|
3107 |
+
0 0 0 rg
|
3108 |
+
BT /F1 10 Tf 12 TL ET
|
3109 |
+
q
|
3110 |
+
1 0 0 1 6 -3 cm
|
3111 |
+
q
|
3112 |
+
0 0 0 rg
|
3113 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
3114 |
+
Q
|
3115 |
+
Q
|
3116 |
+
q
|
3117 |
+
1 0 0 1 23 -3 cm
|
3118 |
+
q
|
3119 |
+
0 0 0 rg
|
3120 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (ggf. konkreten Scoring Wert) Tj T* ET
|
3121 |
+
Q
|
3122 |
+
Q
|
3123 |
+
q
|
3124 |
+
Q
|
3125 |
+
Q
|
3126 |
+
q
|
3127 |
+
1 0 0 1 62.69291 613.0687 cm
|
3128 |
+
Q
|
3129 |
+
q
|
3130 |
+
1 0 0 1 62.69291 601.0687 cm
|
3131 |
+
0 0 0 rg
|
3132 |
+
BT /F1 10 Tf 12 TL ET
|
3133 |
+
q
|
3134 |
+
1 0 0 1 6 -3 cm
|
3135 |
+
q
|
3136 |
+
0 0 0 rg
|
3137 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
3138 |
+
Q
|
3139 |
+
Q
|
3140 |
+
q
|
3141 |
+
1 0 0 1 23 -3 cm
|
3142 |
+
q
|
3143 |
+
0 0 0 rg
|
3144 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (ggf. zus\344tzliche Information zum Identifikationsstatus) Tj T* ET
|
3145 |
+
Q
|
3146 |
+
Q
|
3147 |
+
q
|
3148 |
+
Q
|
3149 |
+
Q
|
3150 |
+
q
|
3151 |
+
1 0 0 1 62.69291 595.0687 cm
|
3152 |
+
Q
|
3153 |
+
q
|
3154 |
+
1 0 0 1 62.69291 583.0687 cm
|
3155 |
+
0 0 0 rg
|
3156 |
+
BT /F1 10 Tf 12 TL ET
|
3157 |
+
q
|
3158 |
+
1 0 0 1 6 -3 cm
|
3159 |
+
q
|
3160 |
+
0 0 0 rg
|
3161 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
3162 |
+
Q
|
3163 |
+
Q
|
3164 |
+
q
|
3165 |
+
1 0 0 1 23 -3 cm
|
3166 |
+
q
|
3167 |
+
0 0 0 rg
|
3168 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (ggf. korrigierte Angaben zum Geschlecht des Kunden) Tj T* ET
|
3169 |
+
Q
|
3170 |
+
Q
|
3171 |
+
q
|
3172 |
+
Q
|
3173 |
+
Q
|
3174 |
+
q
|
3175 |
+
1 0 0 1 62.69291 577.0687 cm
|
3176 |
+
Q
|
3177 |
+
q
|
3178 |
+
1 0 0 1 62.69291 565.0687 cm
|
3179 |
+
0 0 0 rg
|
3180 |
+
BT /F1 10 Tf 12 TL ET
|
3181 |
+
q
|
3182 |
+
1 0 0 1 6 -3 cm
|
3183 |
+
q
|
3184 |
+
0 0 0 rg
|
3185 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
3186 |
+
Q
|
3187 |
+
Q
|
3188 |
+
q
|
3189 |
+
1 0 0 1 23 -3 cm
|
3190 |
+
q
|
3191 |
+
0 0 0 rg
|
3192 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (ggf. korrigiertes Geburtsdatum des Kunden) Tj T* ET
|
3193 |
+
Q
|
3194 |
+
Q
|
3195 |
+
q
|
3196 |
+
Q
|
3197 |
+
Q
|
3198 |
+
q
|
3199 |
+
1 0 0 1 62.69291 559.0687 cm
|
3200 |
+
Q
|
3201 |
+
q
|
3202 |
+
1 0 0 1 62.69291 547.0687 cm
|
3203 |
+
0 0 0 rg
|
3204 |
+
BT /F1 10 Tf 12 TL ET
|
3205 |
+
q
|
3206 |
+
1 0 0 1 6 -3 cm
|
3207 |
+
q
|
3208 |
+
0 0 0 rg
|
3209 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
3210 |
+
Q
|
3211 |
+
Q
|
3212 |
+
q
|
3213 |
+
1 0 0 1 23 -3 cm
|
3214 |
+
q
|
3215 |
+
0 0 0 rg
|
3216 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (ggf. korrigierter Vorname und Name des Kunden) Tj T* ET
|
3217 |
+
Q
|
3218 |
+
Q
|
3219 |
+
q
|
3220 |
+
Q
|
3221 |
+
Q
|
3222 |
+
q
|
3223 |
+
1 0 0 1 62.69291 541.0687 cm
|
3224 |
+
Q
|
3225 |
+
q
|
3226 |
+
1 0 0 1 62.69291 529.0687 cm
|
3227 |
+
0 0 0 rg
|
3228 |
+
BT /F1 10 Tf 12 TL ET
|
3229 |
+
q
|
3230 |
+
1 0 0 1 6 -3 cm
|
3231 |
+
q
|
3232 |
+
0 0 0 rg
|
3233 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
3234 |
+
Q
|
3235 |
+
Q
|
3236 |
+
q
|
3237 |
+
1 0 0 1 23 -3 cm
|
3238 |
+
q
|
3239 |
+
0 0 0 rg
|
3240 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (ggf. korrigierte Adressdaten des Kunden) Tj T* ET
|
3241 |
+
Q
|
3242 |
+
Q
|
3243 |
+
q
|
3244 |
+
Q
|
3245 |
+
Q
|
3246 |
+
q
|
3247 |
+
1 0 0 1 62.69291 523.0687 cm
|
3248 |
+
Q
|
3249 |
+
q
|
3250 |
+
1 0 0 1 62.69291 511.0687 cm
|
3251 |
+
0 0 0 rg
|
3252 |
+
BT /F1 10 Tf 12 TL ET
|
3253 |
+
q
|
3254 |
+
1 0 0 1 6 -3 cm
|
3255 |
+
q
|
3256 |
+
0 0 0 rg
|
3257 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
3258 |
+
Q
|
3259 |
+
Q
|
3260 |
+
q
|
3261 |
+
1 0 0 1 23 -3 cm
|
3262 |
+
q
|
3263 |
+
0 0 0 rg
|
3264 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (das Datum und die Zeit wann die Bonit\344tspr\374fung vorgenommen wurde) Tj T* ET
|
3265 |
+
Q
|
3266 |
+
Q
|
3267 |
+
q
|
3268 |
+
Q
|
3269 |
+
Q
|
3270 |
+
q
|
3271 |
+
1 0 0 1 62.69291 511.0687 cm
|
3272 |
+
Q
|
3273 |
+
q
|
3274 |
+
1 0 0 1 62.69291 505.0687 cm
|
3275 |
+
Q
|
3276 |
+
q
|
3277 |
+
1 0 0 1 62.69291 493.0687 cm
|
3278 |
+
q
|
3279 |
+
0 0 0 rg
|
3280 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
3281 |
+
Q
|
3282 |
+
Q
|
3283 |
+
q
|
3284 |
+
1 0 0 1 62.69291 493.0687 cm
|
3285 |
+
Q
|
3286 |
+
q
|
3287 |
+
1 0 0 1 70.86614 415.4736 cm
|
3288 |
+
q
|
3289 |
+
453.5433 0 0 77.59509 0 0 cm
|
3290 |
+
/FormXob.53a0efa2a6190e318597d225255b5698 Do
|
3291 |
+
Q
|
3292 |
+
Q
|
3293 |
+
q
|
3294 |
+
1 0 0 1 62.69291 409.4736 cm
|
3295 |
+
Q
|
3296 |
+
q
|
3297 |
+
1 0 0 1 62.69291 397.4736 cm
|
3298 |
+
q
|
3299 |
+
0 0 0 rg
|
3300 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL ( ) Tj T* ET
|
3301 |
+
Q
|
3302 |
+
Q
|
3303 |
+
q
|
3304 |
+
1 0 0 1 62.69291 397.4736 cm
|
3305 |
+
Q
|
3306 |
+
q
|
3307 |
+
1 0 0 1 62.69291 367.4736 cm
|
3308 |
+
q
|
3309 |
+
0 0 0 rg
|
3310 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL .536647 Tw (Zus\344tzlich haben Sie die M\366glichkeit entweder ein bestimmtes Ergebnis zu l\366schen \('L\366schen'-Link unter) Tj T* 0 Tw (Aktion\) oder alle Bonit\344tsdaten des Kunden zu l\366schen \(Button 'Bonit\344tsdaten l\366schen'\).) Tj T* ET
|
3311 |
+
Q
|
3312 |
+
Q
|
3313 |
+
q
|
3314 |
+
1 0 0 1 62.69291 367.4736 cm
|
3315 |
+
Q
|
3316 |
+
q
|
3317 |
+
1 0 0 1 56.69291 762.242 cm
|
3318 |
+
1 1 1 rg
|
3319 |
+
n 0 51.30135 481.8898 -51.30135 re f*
|
3320 |
+
0 0 0 rg
|
3321 |
+
BT /F1 10 Tf 12 TL ET
|
3322 |
+
q
|
3323 |
+
1 0 0 1 327.2598 3 cm
|
3324 |
+
q
|
3325 |
+
127.5591 0 0 45.30135 0 0 cm
|
3326 |
+
/FormXob.ccf2ce60accb2f71ebb323971f816d0f Do
|
3327 |
+
Q
|
3328 |
+
Q
|
3329 |
+
q
|
3330 |
+
1 J
|
3331 |
+
1 j
|
3332 |
+
0 0 0 RG
|
3333 |
+
.25 w
|
3334 |
+
n 321.2598 0 m 321.2598 51.30135 l S
|
3335 |
+
n 0 51.30135 m 481.8898 51.30135 l S
|
3336 |
+
n 0 0 m 481.8898 0 l S
|
3337 |
+
n 0 0 m 0 51.30135 l S
|
3338 |
+
n 481.8898 0 m 481.8898 51.30135 l S
|
3339 |
+
Q
|
3340 |
+
Q
|
3341 |
+
q
|
3342 |
+
1 0 0 1 56.69291 56.69291 cm
|
3343 |
+
0 0 0 rg
|
3344 |
+
BT /F1 10 Tf 12 TL ET
|
3345 |
+
q
|
3346 |
+
1 0 0 1 6 39 cm
|
3347 |
+
q
|
3348 |
+
0 0 0 rg
|
3349 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (P 9 / 9 - 05/01/2015) Tj T* ET
|
3350 |
+
Q
|
3351 |
+
Q
|
3352 |
+
q
|
3353 |
+
1 0 0 1 6 27 cm
|
3354 |
+
q
|
3355 |
+
0 0 0 rg
|
3356 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Copyright ExperCash \251 2015.) Tj T* ET
|
3357 |
+
Q
|
3358 |
+
Q
|
3359 |
+
q
|
3360 |
+
1 0 0 1 6 15 cm
|
3361 |
+
q
|
3362 |
+
0 0 0 rg
|
3363 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (The content of this document is protected by copyright.) Tj T* ET
|
3364 |
+
Q
|
3365 |
+
Q
|
3366 |
+
q
|
3367 |
+
1 0 0 1 6 3 cm
|
3368 |
+
q
|
3369 |
+
0 0 0 rg
|
3370 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (All rights reserved.) Tj T* ET
|
3371 |
+
Q
|
3372 |
+
Q
|
3373 |
+
q
|
3374 |
+
Q
|
3375 |
+
Q
|
3376 |
+
|
3377 |
+
endstream
|
3378 |
+
endobj
|
3379 |
+
% 'R61': class PDFPageLabels
|
3380 |
+
61 0 obj
|
3381 |
+
% Document Root
|
3382 |
+
<< /Nums [ 0
|
3383 |
+
62 0 R
|
3384 |
+
1
|
3385 |
+
63 0 R
|
3386 |
+
2
|
3387 |
+
64 0 R
|
3388 |
+
3
|
3389 |
+
65 0 R
|
3390 |
+
4
|
3391 |
+
66 0 R
|
3392 |
+
5
|
3393 |
+
67 0 R
|
3394 |
+
6
|
3395 |
+
68 0 R
|
3396 |
+
7
|
3397 |
+
69 0 R
|
3398 |
+
8
|
3399 |
+
70 0 R ] >>
|
3400 |
+
endobj
|
3401 |
+
% 'R62': class PDFPageLabel
|
3402 |
+
62 0 obj
|
3403 |
+
% None
|
3404 |
+
<< /S /D
|
3405 |
+
/St 1 >>
|
3406 |
+
endobj
|
3407 |
+
% 'R63': class PDFPageLabel
|
3408 |
+
63 0 obj
|
3409 |
+
% None
|
3410 |
+
<< /S /D
|
3411 |
+
/St 2 >>
|
3412 |
+
endobj
|
3413 |
+
% 'R64': class PDFPageLabel
|
3414 |
+
64 0 obj
|
3415 |
+
% None
|
3416 |
+
<< /S /D
|
3417 |
+
/St 3 >>
|
3418 |
+
endobj
|
3419 |
+
% 'R65': class PDFPageLabel
|
3420 |
+
65 0 obj
|
3421 |
+
% None
|
3422 |
+
<< /S /D
|
3423 |
+
/St 4 >>
|
3424 |
+
endobj
|
3425 |
+
% 'R66': class PDFPageLabel
|
3426 |
+
66 0 obj
|
3427 |
+
% None
|
3428 |
+
<< /S /D
|
3429 |
+
/St 5 >>
|
3430 |
+
endobj
|
3431 |
+
% 'R67': class PDFPageLabel
|
3432 |
+
67 0 obj
|
3433 |
+
% None
|
3434 |
+
<< /S /D
|
3435 |
+
/St 6 >>
|
3436 |
+
endobj
|
3437 |
+
% 'R68': class PDFPageLabel
|
3438 |
+
68 0 obj
|
3439 |
+
% None
|
3440 |
+
<< /S /D
|
3441 |
+
/St 7 >>
|
3442 |
+
endobj
|
3443 |
+
% 'R69': class PDFPageLabel
|
3444 |
+
69 0 obj
|
3445 |
+
% None
|
3446 |
+
<< /S /D
|
3447 |
+
/St 8 >>
|
3448 |
+
endobj
|
3449 |
+
% 'R70': class PDFPageLabel
|
3450 |
+
70 0 obj
|
3451 |
+
% None
|
3452 |
+
<< /S /D
|
3453 |
+
/St 9 >>
|
3454 |
+
endobj
|
3455 |
+
xref
|
3456 |
+
0 71
|
3457 |
+
0000000000 65535 f
|
3458 |
+
0000000113 00000 n
|
3459 |
+
0000000221 00000 n
|
3460 |
+
0000000427 00000 n
|
3461 |
+
0000161703 00000 n
|
3462 |
+
0000161919 00000 n
|
3463 |
+
0000170353 00000 n
|
3464 |
+
0000170762 00000 n
|
3465 |
+
0000171003 00000 n
|
3466 |
+
0000171244 00000 n
|
3467 |
+
0000171485 00000 n
|
3468 |
+
0000171727 00000 n
|
3469 |
+
0000171969 00000 n
|
3470 |
+
0000172211 00000 n
|
3471 |
+
0000172453 00000 n
|
3472 |
+
0000172695 00000 n
|
3473 |
+
0000172938 00000 n
|
3474 |
+
0000173181 00000 n
|
3475 |
+
0000173424 00000 n
|
3476 |
+
0000173667 00000 n
|
3477 |
+
0000173910 00000 n
|
3478 |
+
0000174153 00000 n
|
3479 |
+
0000174396 00000 n
|
3480 |
+
0000174639 00000 n
|
3481 |
+
0000174882 00000 n
|
3482 |
+
0000175125 00000 n
|
3483 |
+
0000175368 00000 n
|
3484 |
+
0000175595 00000 n
|
3485 |
+
0000176129 00000 n
|
3486 |
+
0000176474 00000 n
|
3487 |
+
0000176819 00000 n
|
3488 |
+
0000177164 00000 n
|
3489 |
+
0000177509 00000 n
|
3490 |
+
0000177897 00000 n
|
3491 |
+
0000198528 00000 n
|
3492 |
+
0000206466 00000 n
|
3493 |
+
0000206956 00000 n
|
3494 |
+
0000251907 00000 n
|
3495 |
+
0000252304 00000 n
|
3496 |
+
0000252463 00000 n
|
3497 |
+
0000252711 00000 n
|
3498 |
+
0000252837 00000 n
|
3499 |
+
0000253085 00000 n
|
3500 |
+
0000253373 00000 n
|
3501 |
+
0000253646 00000 n
|
3502 |
+
0000253969 00000 n
|
3503 |
+
0000254300 00000 n
|
3504 |
+
0000254697 00000 n
|
3505 |
+
0000255056 00000 n
|
3506 |
+
0000255434 00000 n
|
3507 |
+
0000255752 00000 n
|
3508 |
+
0000256054 00000 n
|
3509 |
+
0000256233 00000 n
|
3510 |
+
0000262231 00000 n
|
3511 |
+
0000266199 00000 n
|
3512 |
+
0000274175 00000 n
|
3513 |
+
0000282264 00000 n
|
3514 |
+
0000290539 00000 n
|
3515 |
+
0000292744 00000 n
|
3516 |
+
0000296576 00000 n
|
3517 |
+
0000299714 00000 n
|
3518 |
+
0000305363 00000 n
|
3519 |
+
0000305560 00000 n
|
3520 |
+
0000305637 00000 n
|
3521 |
+
0000305714 00000 n
|
3522 |
+
0000305791 00000 n
|
3523 |
+
0000305868 00000 n
|
3524 |
+
0000305945 00000 n
|
3525 |
+
0000306022 00000 n
|
3526 |
+
0000306099 00000 n
|
3527 |
+
0000306176 00000 n
|
3528 |
+
trailer
|
3529 |
+
<< /ID
|
3530 |
+
% ReportLab generated PDF document -- digest (http://www.reportlab.com)
|
3531 |
+
[(\347\207\350\247\034\243\3777<\346\2469\341\204\037\005) (\347\207\350\247\034\243\3777<\346\2469\341\204\037\005)]
|
3532 |
+
|
3533 |
+
/Info 39 0 R
|
3534 |
+
/Root 38 0 R
|
3535 |
+
/Size 71 >>
|
3536 |
+
startxref
|
3537 |
+
306223
|
3538 |
+
%%EOF
|
doc/Expercash_Scoring/Specification.pdf
ADDED
@@ -0,0 +1,5098 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
%PDF-1.4
|
2 |
+
%���� ReportLab Generated PDF document http://www.reportlab.com
|
3 |
+
% 'BasicFonts': class PDFDictionary
|
4 |
+
1 0 obj
|
5 |
+
% The standard fonts dictionary
|
6 |
+
<< /F1 2 0 R
|
7 |
+
/F2 3 0 R
|
8 |
+
/F3 5 0 R
|
9 |
+
/F4 7 0 R >>
|
10 |
+
endobj
|
11 |
+
% 'F1': class PDFType1Font
|
12 |
+
2 0 obj
|
13 |
+
% Font Helvetica
|
14 |
+
<< /BaseFont /Helvetica
|
15 |
+
/Encoding /WinAnsiEncoding
|
16 |
+
/Name /F1
|
17 |
+
/Subtype /Type1
|
18 |
+
/Type /Font >>
|
19 |
+
endobj
|
20 |
+
% 'F2': class PDFType1Font
|
21 |
+
3 0 obj
|
22 |
+
% Font Helvetica-Bold
|
23 |
+
<< /BaseFont /Helvetica-Bold
|
24 |
+
/Encoding /WinAnsiEncoding
|
25 |
+
/Name /F2
|
26 |
+
/Subtype /Type1
|
27 |
+
/Type /Font >>
|
28 |
+
endobj
|
29 |
+
% 'Page1': class PDFPage
|
30 |
+
4 0 obj
|
31 |
+
% Page dictionary
|
32 |
+
<< /Contents 25 0 R
|
33 |
+
/MediaBox [ 0
|
34 |
+
0
|
35 |
+
595.2756
|
36 |
+
841.8898 ]
|
37 |
+
/Parent 24 0 R
|
38 |
+
/Resources << /Font 1 0 R
|
39 |
+
/ProcSet [ /PDF
|
40 |
+
/Text
|
41 |
+
/ImageB
|
42 |
+
/ImageC
|
43 |
+
/ImageI ] >>
|
44 |
+
/Rotate 0
|
45 |
+
/Trans << >>
|
46 |
+
/Type /Page >>
|
47 |
+
endobj
|
48 |
+
% 'F3': class PDFType1Font
|
49 |
+
5 0 obj
|
50 |
+
% Font Helvetica-BoldOblique
|
51 |
+
<< /BaseFont /Helvetica-BoldOblique
|
52 |
+
/Encoding /WinAnsiEncoding
|
53 |
+
/Name /F3
|
54 |
+
/Subtype /Type1
|
55 |
+
/Type /Font >>
|
56 |
+
endobj
|
57 |
+
% 'Page2': class PDFPage
|
58 |
+
6 0 obj
|
59 |
+
% Page dictionary
|
60 |
+
<< /Contents 26 0 R
|
61 |
+
/MediaBox [ 0
|
62 |
+
0
|
63 |
+
595.2756
|
64 |
+
841.8898 ]
|
65 |
+
/Parent 24 0 R
|
66 |
+
/Resources << /Font 1 0 R
|
67 |
+
/ProcSet [ /PDF
|
68 |
+
/Text
|
69 |
+
/ImageB
|
70 |
+
/ImageC
|
71 |
+
/ImageI ] >>
|
72 |
+
/Rotate 0
|
73 |
+
/Trans << >>
|
74 |
+
/Type /Page >>
|
75 |
+
endobj
|
76 |
+
% 'F4': class PDFType1Font
|
77 |
+
7 0 obj
|
78 |
+
% Font Helvetica-Oblique
|
79 |
+
<< /BaseFont /Helvetica-Oblique
|
80 |
+
/Encoding /WinAnsiEncoding
|
81 |
+
/Name /F4
|
82 |
+
/Subtype /Type1
|
83 |
+
/Type /Font >>
|
84 |
+
endobj
|
85 |
+
% 'Page3': class PDFPage
|
86 |
+
8 0 obj
|
87 |
+
% Page dictionary
|
88 |
+
<< /Contents 27 0 R
|
89 |
+
/MediaBox [ 0
|
90 |
+
0
|
91 |
+
595.2756
|
92 |
+
841.8898 ]
|
93 |
+
/Parent 24 0 R
|
94 |
+
/Resources << /Font 1 0 R
|
95 |
+
/ProcSet [ /PDF
|
96 |
+
/Text
|
97 |
+
/ImageB
|
98 |
+
/ImageC
|
99 |
+
/ImageI ] >>
|
100 |
+
/Rotate 0
|
101 |
+
/Trans << >>
|
102 |
+
/Type /Page >>
|
103 |
+
endobj
|
104 |
+
% 'Page4': class PDFPage
|
105 |
+
9 0 obj
|
106 |
+
% Page dictionary
|
107 |
+
<< /Contents 28 0 R
|
108 |
+
/MediaBox [ 0
|
109 |
+
0
|
110 |
+
595.2756
|
111 |
+
841.8898 ]
|
112 |
+
/Parent 24 0 R
|
113 |
+
/Resources << /Font 1 0 R
|
114 |
+
/ProcSet [ /PDF
|
115 |
+
/Text
|
116 |
+
/ImageB
|
117 |
+
/ImageC
|
118 |
+
/ImageI ] >>
|
119 |
+
/Rotate 0
|
120 |
+
/Trans << >>
|
121 |
+
/Type /Page >>
|
122 |
+
endobj
|
123 |
+
% 'Page5': class PDFPage
|
124 |
+
10 0 obj
|
125 |
+
% Page dictionary
|
126 |
+
<< /Contents 29 0 R
|
127 |
+
/MediaBox [ 0
|
128 |
+
0
|
129 |
+
595.2756
|
130 |
+
841.8898 ]
|
131 |
+
/Parent 24 0 R
|
132 |
+
/Resources << /Font 1 0 R
|
133 |
+
/ProcSet [ /PDF
|
134 |
+
/Text
|
135 |
+
/ImageB
|
136 |
+
/ImageC
|
137 |
+
/ImageI ] >>
|
138 |
+
/Rotate 0
|
139 |
+
/Trans << >>
|
140 |
+
/Type /Page >>
|
141 |
+
endobj
|
142 |
+
% 'Page6': class PDFPage
|
143 |
+
11 0 obj
|
144 |
+
% Page dictionary
|
145 |
+
<< /Contents 30 0 R
|
146 |
+
/MediaBox [ 0
|
147 |
+
0
|
148 |
+
595.2756
|
149 |
+
841.8898 ]
|
150 |
+
/Parent 24 0 R
|
151 |
+
/Resources << /Font 1 0 R
|
152 |
+
/ProcSet [ /PDF
|
153 |
+
/Text
|
154 |
+
/ImageB
|
155 |
+
/ImageC
|
156 |
+
/ImageI ] >>
|
157 |
+
/Rotate 0
|
158 |
+
/Trans << >>
|
159 |
+
/Type /Page >>
|
160 |
+
endobj
|
161 |
+
% 'Page7': class PDFPage
|
162 |
+
12 0 obj
|
163 |
+
% Page dictionary
|
164 |
+
<< /Contents 31 0 R
|
165 |
+
/MediaBox [ 0
|
166 |
+
0
|
167 |
+
595.2756
|
168 |
+
841.8898 ]
|
169 |
+
/Parent 24 0 R
|
170 |
+
/Resources << /Font 1 0 R
|
171 |
+
/ProcSet [ /PDF
|
172 |
+
/Text
|
173 |
+
/ImageB
|
174 |
+
/ImageC
|
175 |
+
/ImageI ] >>
|
176 |
+
/Rotate 0
|
177 |
+
/Trans << >>
|
178 |
+
/Type /Page >>
|
179 |
+
endobj
|
180 |
+
% 'Page8': class PDFPage
|
181 |
+
13 0 obj
|
182 |
+
% Page dictionary
|
183 |
+
<< /Contents 32 0 R
|
184 |
+
/MediaBox [ 0
|
185 |
+
0
|
186 |
+
595.2756
|
187 |
+
841.8898 ]
|
188 |
+
/Parent 24 0 R
|
189 |
+
/Resources << /Font 1 0 R
|
190 |
+
/ProcSet [ /PDF
|
191 |
+
/Text
|
192 |
+
/ImageB
|
193 |
+
/ImageC
|
194 |
+
/ImageI ] >>
|
195 |
+
/Rotate 0
|
196 |
+
/Trans << >>
|
197 |
+
/Type /Page >>
|
198 |
+
endobj
|
199 |
+
% 'Page9': class PDFPage
|
200 |
+
14 0 obj
|
201 |
+
% Page dictionary
|
202 |
+
<< /Contents 33 0 R
|
203 |
+
/MediaBox [ 0
|
204 |
+
0
|
205 |
+
595.2756
|
206 |
+
841.8898 ]
|
207 |
+
/Parent 24 0 R
|
208 |
+
/Resources << /Font 1 0 R
|
209 |
+
/ProcSet [ /PDF
|
210 |
+
/Text
|
211 |
+
/ImageB
|
212 |
+
/ImageC
|
213 |
+
/ImageI ] >>
|
214 |
+
/Rotate 0
|
215 |
+
/Trans << >>
|
216 |
+
/Type /Page >>
|
217 |
+
endobj
|
218 |
+
% 'Page10': class PDFPage
|
219 |
+
15 0 obj
|
220 |
+
% Page dictionary
|
221 |
+
<< /Contents 34 0 R
|
222 |
+
/MediaBox [ 0
|
223 |
+
0
|
224 |
+
595.2756
|
225 |
+
841.8898 ]
|
226 |
+
/Parent 24 0 R
|
227 |
+
/Resources << /Font 1 0 R
|
228 |
+
/ProcSet [ /PDF
|
229 |
+
/Text
|
230 |
+
/ImageB
|
231 |
+
/ImageC
|
232 |
+
/ImageI ] >>
|
233 |
+
/Rotate 0
|
234 |
+
/Trans << >>
|
235 |
+
/Type /Page >>
|
236 |
+
endobj
|
237 |
+
% 'Page11': class PDFPage
|
238 |
+
16 0 obj
|
239 |
+
% Page dictionary
|
240 |
+
<< /Contents 35 0 R
|
241 |
+
/MediaBox [ 0
|
242 |
+
0
|
243 |
+
595.2756
|
244 |
+
841.8898 ]
|
245 |
+
/Parent 24 0 R
|
246 |
+
/Resources << /Font 1 0 R
|
247 |
+
/ProcSet [ /PDF
|
248 |
+
/Text
|
249 |
+
/ImageB
|
250 |
+
/ImageC
|
251 |
+
/ImageI ] >>
|
252 |
+
/Rotate 0
|
253 |
+
/Trans << >>
|
254 |
+
/Type /Page >>
|
255 |
+
endobj
|
256 |
+
% 'R17': class PDFCatalog
|
257 |
+
17 0 obj
|
258 |
+
% Document Root
|
259 |
+
<< /Outlines 19 0 R
|
260 |
+
/PageLabels 36 0 R
|
261 |
+
/PageMode /UseNone
|
262 |
+
/Pages 24 0 R
|
263 |
+
/Type /Catalog >>
|
264 |
+
endobj
|
265 |
+
% 'R18': class PDFInfo
|
266 |
+
18 0 obj
|
267 |
+
<< /Author ()
|
268 |
+
/CreationDate (D:20150105230539-01'00')
|
269 |
+
/Creator (\(unspecified\))
|
270 |
+
/Keywords ()
|
271 |
+
/Producer (ReportLab PDF Library - www.reportlab.com)
|
272 |
+
/Subject (\(unspecified\))
|
273 |
+
/Title (Specification) >>
|
274 |
+
endobj
|
275 |
+
% 'R19': class PDFOutlines
|
276 |
+
19 0 obj
|
277 |
+
<< /Count 4
|
278 |
+
/First 20 0 R
|
279 |
+
/Last 23 0 R
|
280 |
+
/Type /Outlines >>
|
281 |
+
endobj
|
282 |
+
% 'Outline.0': class OutlineEntryObject
|
283 |
+
20 0 obj
|
284 |
+
<< /Dest [ 6 0 R
|
285 |
+
/XYZ
|
286 |
+
62.69291
|
287 |
+
793.3701
|
288 |
+
0 ]
|
289 |
+
/Next 21 0 R
|
290 |
+
/Parent 19 0 R
|
291 |
+
/Title (Gesamt-Modul) >>
|
292 |
+
endobj
|
293 |
+
% 'Outline.1': class OutlineEntryObject
|
294 |
+
21 0 obj
|
295 |
+
<< /Dest [ 8 0 R
|
296 |
+
/XYZ
|
297 |
+
62.69291
|
298 |
+
793.3701
|
299 |
+
0 ]
|
300 |
+
/Next 22 0 R
|
301 |
+
/Parent 19 0 R
|
302 |
+
/Prev 20 0 R
|
303 |
+
/Title (Konfigurationsbereich) >>
|
304 |
+
endobj
|
305 |
+
% 'Outline.2': class OutlineEntryObject
|
306 |
+
22 0 obj
|
307 |
+
<< /Dest [ 11 0 R
|
308 |
+
/XYZ
|
309 |
+
62.69291
|
310 |
+
793.3701
|
311 |
+
0 ]
|
312 |
+
/Next 23 0 R
|
313 |
+
/Parent 19 0 R
|
314 |
+
/Prev 21 0 R
|
315 |
+
/Title (Verhalten im Checkout) >>
|
316 |
+
endobj
|
317 |
+
% 'Outline.3': class OutlineEntryObject
|
318 |
+
23 0 obj
|
319 |
+
<< /Dest [ 16 0 R
|
320 |
+
/XYZ
|
321 |
+
62.69291
|
322 |
+
793.3701
|
323 |
+
0 ]
|
324 |
+
/Parent 19 0 R
|
325 |
+
/Prev 22 0 R
|
326 |
+
/Title (Verhalten im Backend) >>
|
327 |
+
endobj
|
328 |
+
% 'R24': class PDFPages
|
329 |
+
24 0 obj
|
330 |
+
% page tree
|
331 |
+
<< /Count 11
|
332 |
+
/Kids [ 4 0 R
|
333 |
+
6 0 R
|
334 |
+
8 0 R
|
335 |
+
9 0 R
|
336 |
+
10 0 R
|
337 |
+
11 0 R
|
338 |
+
12 0 R
|
339 |
+
13 0 R
|
340 |
+
14 0 R
|
341 |
+
15 0 R
|
342 |
+
16 0 R ]
|
343 |
+
/Type /Pages >>
|
344 |
+
endobj
|
345 |
+
% 'R25': class PDFStream
|
346 |
+
25 0 obj
|
347 |
+
% page stream
|
348 |
+
<< /Length 233 >>
|
349 |
+
stream
|
350 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
351 |
+
q
|
352 |
+
1 0 0 1 62.69291 769.3701 cm
|
353 |
+
q
|
354 |
+
0 .533333 .603922 rg
|
355 |
+
BT 1 0 0 1 0 4 Tm /F2 20 Tf 24 TL 172.7049 0 Td (Specification) Tj T* -172.7049 0 Td ET
|
356 |
+
Q
|
357 |
+
Q
|
358 |
+
q
|
359 |
+
1 0 0 1 62.69291 759.3701 cm
|
360 |
+
Q
|
361 |
+
|
362 |
+
endstream
|
363 |
+
endobj
|
364 |
+
% 'R26': class PDFStream
|
365 |
+
26 0 obj
|
366 |
+
% page stream
|
367 |
+
<< /Length 1956 >>
|
368 |
+
stream
|
369 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
370 |
+
q
|
371 |
+
1 0 0 1 62.69291 772.3701 cm
|
372 |
+
q
|
373 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (Gesamt-Modul) Tj T* ET
|
374 |
+
Q
|
375 |
+
Q
|
376 |
+
q
|
377 |
+
1 0 0 1 62.69291 760.3701 cm
|
378 |
+
Q
|
379 |
+
q
|
380 |
+
1 0 0 1 62.69291 670.3701 cm
|
381 |
+
0 0 0 rg
|
382 |
+
BT /F1 10 Tf 12 TL ET
|
383 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
384 |
+
q
|
385 |
+
1 0 0 1 20 84 cm
|
386 |
+
Q
|
387 |
+
q
|
388 |
+
1 0 0 1 20 69 cm
|
389 |
+
0 0 0 rg
|
390 |
+
BT /F1 10 Tf 12 TL ET
|
391 |
+
q
|
392 |
+
1 0 0 1 6 3 cm
|
393 |
+
q
|
394 |
+
BT 1 0 0 1 0 2 Tm 11.91937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Mit dem Ziel) Tj /F2 10 Tf (:) Tj T* -11.91937 0 Td ET
|
395 |
+
Q
|
396 |
+
Q
|
397 |
+
q
|
398 |
+
1 0 0 1 91.03937 3 cm
|
399 |
+
q
|
400 |
+
0 0 0 rg
|
401 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Zahlungsarten gem\344\337 der Bonit\344t des Kunden zu filtern und anzuzeigen) Tj T* ET
|
402 |
+
Q
|
403 |
+
Q
|
404 |
+
q
|
405 |
+
Q
|
406 |
+
Q
|
407 |
+
q
|
408 |
+
1 0 0 1 20 54 cm
|
409 |
+
0 0 0 rg
|
410 |
+
BT /F1 10 Tf 12 TL ET
|
411 |
+
q
|
412 |
+
1 0 0 1 6 3 cm
|
413 |
+
q
|
414 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
415 |
+
Q
|
416 |
+
Q
|
417 |
+
q
|
418 |
+
1 0 0 1 91.03937 3 cm
|
419 |
+
q
|
420 |
+
0 0 0 rg
|
421 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
422 |
+
Q
|
423 |
+
Q
|
424 |
+
q
|
425 |
+
Q
|
426 |
+
Q
|
427 |
+
q
|
428 |
+
1 0 0 1 20 27 cm
|
429 |
+
0 0 0 rg
|
430 |
+
BT /F1 10 Tf 12 TL ET
|
431 |
+
q
|
432 |
+
1 0 0 1 6 15 cm
|
433 |
+
q
|
434 |
+
BT 1 0 0 1 0 2 Tm 2.46937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -2.46937 0 Td ET
|
435 |
+
Q
|
436 |
+
Q
|
437 |
+
q
|
438 |
+
1 0 0 1 91.03937 3 cm
|
439 |
+
q
|
440 |
+
0 0 0 rg
|
441 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 2.423799 Tw (der ExperCash-Account ist korrekt konfiguriert und im Magento eingerichtet) Tj T* 0 Tw (\(Zugangsdaten, Ampelwerte, ...\)) Tj T* ET
|
442 |
+
Q
|
443 |
+
Q
|
444 |
+
q
|
445 |
+
Q
|
446 |
+
Q
|
447 |
+
q
|
448 |
+
1 0 0 1 20 0 cm
|
449 |
+
0 0 0 rg
|
450 |
+
BT /F1 10 Tf 12 TL ET
|
451 |
+
q
|
452 |
+
1 0 0 1 6 3 cm
|
453 |
+
q
|
454 |
+
BT 1 0 0 1 0 14 Tm 17.46937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (m\366chte ich,) Tj T* 29.45 0 Td (dass) Tj /F2 10 Tf (:) Tj T* -46.91937 0 Td ET
|
455 |
+
Q
|
456 |
+
Q
|
457 |
+
q
|
458 |
+
1 0 0 1 91.03937 3 cm
|
459 |
+
q
|
460 |
+
0 0 0 rg
|
461 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL .322039 Tw (dem Kunden nur die Zahlarten angezeifgt werden, die f\374r seine B\366nit\344tsgruppe) Tj T* 0 Tw (zul\344ssig sind) Tj T* ET
|
462 |
+
Q
|
463 |
+
Q
|
464 |
+
q
|
465 |
+
Q
|
466 |
+
Q
|
467 |
+
q
|
468 |
+
Q
|
469 |
+
Q
|
470 |
+
q
|
471 |
+
1 0 0 1 62.69291 670.3701 cm
|
472 |
+
Q
|
473 |
+
q
|
474 |
+
1 0 0 1 62.69291 670.3701 cm
|
475 |
+
Q
|
476 |
+
|
477 |
+
endstream
|
478 |
+
endobj
|
479 |
+
% 'R27': class PDFStream
|
480 |
+
27 0 obj
|
481 |
+
% page stream
|
482 |
+
<< /Length 10336 >>
|
483 |
+
stream
|
484 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
485 |
+
q
|
486 |
+
1 0 0 1 62.69291 772.3701 cm
|
487 |
+
q
|
488 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (Konfigurationsbereich) Tj T* ET
|
489 |
+
Q
|
490 |
+
Q
|
491 |
+
q
|
492 |
+
1 0 0 1 62.69291 760.3701 cm
|
493 |
+
Q
|
494 |
+
q
|
495 |
+
1 0 0 1 62.69291 760.3701 cm
|
496 |
+
Q
|
497 |
+
q
|
498 |
+
1 0 0 1 62.69291 748.3701 cm
|
499 |
+
0 0 0 rg
|
500 |
+
BT /F1 10 Tf 12 TL ET
|
501 |
+
q
|
502 |
+
1 0 0 1 6 -3 cm
|
503 |
+
q
|
504 |
+
0 0 0 rg
|
505 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (1.) Tj T* -5.66 0 Td ET
|
506 |
+
Q
|
507 |
+
Q
|
508 |
+
q
|
509 |
+
1 0 0 1 23 -3 cm
|
510 |
+
q
|
511 |
+
0 0 0 rg
|
512 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Szenario "Allgemeine Einstellungen":) Tj T* ET
|
513 |
+
Q
|
514 |
+
Q
|
515 |
+
q
|
516 |
+
Q
|
517 |
+
Q
|
518 |
+
q
|
519 |
+
1 0 0 1 62.69291 748.3701 cm
|
520 |
+
Q
|
521 |
+
q
|
522 |
+
1 0 0 1 62.69291 730.3701 cm
|
523 |
+
q
|
524 |
+
0 0 0 rg
|
525 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 1:) Tj T* ET
|
526 |
+
Q
|
527 |
+
Q
|
528 |
+
q
|
529 |
+
1 0 0 1 62.69291 724.3701 cm
|
530 |
+
Q
|
531 |
+
q
|
532 |
+
1 0 0 1 62.69291 520.3701 cm
|
533 |
+
0 0 0 rg
|
534 |
+
BT /F1 10 Tf 12 TL ET
|
535 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
536 |
+
q
|
537 |
+
1 0 0 1 20 198 cm
|
538 |
+
Q
|
539 |
+
q
|
540 |
+
1 0 0 1 20 183 cm
|
541 |
+
0 0 0 rg
|
542 |
+
BT /F1 10 Tf 12 TL ET
|
543 |
+
q
|
544 |
+
1 0 0 1 6 3 cm
|
545 |
+
q
|
546 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
547 |
+
Q
|
548 |
+
Q
|
549 |
+
q
|
550 |
+
1 0 0 1 91.03937 3 cm
|
551 |
+
q
|
552 |
+
0 0 0 rg
|
553 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Das Expercash-Scoring-Modul ist installiert und ich bin im Backend angemeldet) Tj T* ET
|
554 |
+
Q
|
555 |
+
Q
|
556 |
+
q
|
557 |
+
Q
|
558 |
+
Q
|
559 |
+
q
|
560 |
+
1 0 0 1 20 168 cm
|
561 |
+
0 0 0 rg
|
562 |
+
BT /F1 10 Tf 12 TL ET
|
563 |
+
q
|
564 |
+
1 0 0 1 6 3 cm
|
565 |
+
q
|
566 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
567 |
+
Q
|
568 |
+
Q
|
569 |
+
q
|
570 |
+
1 0 0 1 91.03937 3 cm
|
571 |
+
q
|
572 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F1 10 Tf 0 0 0 rg (den Punkt ) Tj /F4 10 Tf (Bonit\344tspr\374fung ) Tj /F1 10 Tf (im Konfigurationsbereich von Magento \366ffne) Tj T* ET
|
573 |
+
Q
|
574 |
+
Q
|
575 |
+
q
|
576 |
+
Q
|
577 |
+
Q
|
578 |
+
q
|
579 |
+
1 0 0 1 20 153 cm
|
580 |
+
0 0 0 rg
|
581 |
+
BT /F1 10 Tf 12 TL ET
|
582 |
+
q
|
583 |
+
1 0 0 1 6 3 cm
|
584 |
+
q
|
585 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
586 |
+
Q
|
587 |
+
Q
|
588 |
+
q
|
589 |
+
1 0 0 1 91.03937 3 cm
|
590 |
+
q
|
591 |
+
0 0 0 rg
|
592 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
593 |
+
Q
|
594 |
+
Q
|
595 |
+
q
|
596 |
+
Q
|
597 |
+
Q
|
598 |
+
q
|
599 |
+
1 0 0 1 20 0 cm
|
600 |
+
0 0 0 rg
|
601 |
+
BT /F1 10 Tf 12 TL ET
|
602 |
+
q
|
603 |
+
1 0 0 1 6 141 cm
|
604 |
+
q
|
605 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
606 |
+
Q
|
607 |
+
Q
|
608 |
+
q
|
609 |
+
1 0 0 1 91.03937 129 cm
|
610 |
+
q
|
611 |
+
0 0 0 rg
|
612 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 6.38671 Tw (finde ich dort die folgenden Optionen unter dem Punkt "Allgemeine) Tj T* 0 Tw (Einstellungen") Tj T* ET
|
613 |
+
Q
|
614 |
+
Q
|
615 |
+
q
|
616 |
+
1 0 0 1 91.03937 123 cm
|
617 |
+
Q
|
618 |
+
q
|
619 |
+
1 0 0 1 91.03937 123 cm
|
620 |
+
Q
|
621 |
+
q
|
622 |
+
1 0 0 1 91.03937 111 cm
|
623 |
+
0 0 0 rg
|
624 |
+
BT /F1 10 Tf 12 TL ET
|
625 |
+
q
|
626 |
+
1 0 0 1 6 -3 cm
|
627 |
+
q
|
628 |
+
0 0 0 rg
|
629 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
630 |
+
Q
|
631 |
+
Q
|
632 |
+
q
|
633 |
+
1 0 0 1 23 -3 cm
|
634 |
+
q
|
635 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F4 10 Tf 0 0 0 rg (Aktiviert ) Tj /F1 10 Tf (mit einem Ja/nein Feld) Tj T* ET
|
636 |
+
Q
|
637 |
+
Q
|
638 |
+
q
|
639 |
+
Q
|
640 |
+
Q
|
641 |
+
q
|
642 |
+
1 0 0 1 91.03937 105 cm
|
643 |
+
Q
|
644 |
+
q
|
645 |
+
1 0 0 1 91.03937 93 cm
|
646 |
+
0 0 0 rg
|
647 |
+
BT /F1 10 Tf 12 TL ET
|
648 |
+
q
|
649 |
+
1 0 0 1 6 -3 cm
|
650 |
+
q
|
651 |
+
0 0 0 rg
|
652 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
653 |
+
Q
|
654 |
+
Q
|
655 |
+
q
|
656 |
+
1 0 0 1 23 -3 cm
|
657 |
+
q
|
658 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F4 10 Tf 0 0 0 rg (Projekt ID ) Tj /F1 10 Tf (mit einem Textfeld f\374r die Projekt ID) Tj T* ET
|
659 |
+
Q
|
660 |
+
Q
|
661 |
+
q
|
662 |
+
Q
|
663 |
+
Q
|
664 |
+
q
|
665 |
+
1 0 0 1 91.03937 87 cm
|
666 |
+
Q
|
667 |
+
q
|
668 |
+
1 0 0 1 91.03937 75 cm
|
669 |
+
0 0 0 rg
|
670 |
+
BT /F1 10 Tf 12 TL ET
|
671 |
+
q
|
672 |
+
1 0 0 1 6 -3 cm
|
673 |
+
q
|
674 |
+
0 0 0 rg
|
675 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
676 |
+
Q
|
677 |
+
Q
|
678 |
+
q
|
679 |
+
1 0 0 1 23 -3 cm
|
680 |
+
q
|
681 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F4 10 Tf 0 0 0 rg (API Schl\374ssel ) Tj /F1 10 Tf (mit einem Textfeld f\374r den API-Schl\374ssel) Tj T* ET
|
682 |
+
Q
|
683 |
+
Q
|
684 |
+
q
|
685 |
+
Q
|
686 |
+
Q
|
687 |
+
q
|
688 |
+
1 0 0 1 91.03937 69 cm
|
689 |
+
Q
|
690 |
+
q
|
691 |
+
1 0 0 1 91.03937 21 cm
|
692 |
+
0 0 0 rg
|
693 |
+
BT /F1 10 Tf 12 TL ET
|
694 |
+
q
|
695 |
+
1 0 0 1 6 33 cm
|
696 |
+
q
|
697 |
+
0 0 0 rg
|
698 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
699 |
+
Q
|
700 |
+
Q
|
701 |
+
q
|
702 |
+
1 0 0 1 23 -3 cm
|
703 |
+
q
|
704 |
+
BT 1 0 0 1 0 38 Tm 10.3572 Tw 12 TL /F4 10 Tf 0 0 0 rg (F\374hre Bonit\344tspr\374fung f\374r folgende L\344nder durch ) Tj /F1 10 Tf (mit einer) Tj T* 0 Tw 4.398079 Tw (Mehrfachauswahl \(deaktiviert\) UND Deutschland vorausgew\344hlt UND) Tj T* 0 Tw .586299 Tw (einen Hinweistext, dass die Bonit\344tspr\374fungen nur f\374r deutsche Adressen) Tj T* 0 Tw (durchgef\374hrt werden) Tj T* ET
|
705 |
+
Q
|
706 |
+
Q
|
707 |
+
q
|
708 |
+
Q
|
709 |
+
Q
|
710 |
+
q
|
711 |
+
1 0 0 1 91.03937 15 cm
|
712 |
+
Q
|
713 |
+
q
|
714 |
+
1 0 0 1 91.03937 3 cm
|
715 |
+
0 0 0 rg
|
716 |
+
BT /F1 10 Tf 12 TL ET
|
717 |
+
q
|
718 |
+
1 0 0 1 6 -3 cm
|
719 |
+
q
|
720 |
+
0 0 0 rg
|
721 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
722 |
+
Q
|
723 |
+
Q
|
724 |
+
q
|
725 |
+
1 0 0 1 23 -3 cm
|
726 |
+
q
|
727 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F4 10 Tf 0 0 0 rg (Log aktivieren ) Tj /F1 10 Tf (mit einem Ja/nein Feld) Tj T* ET
|
728 |
+
Q
|
729 |
+
Q
|
730 |
+
q
|
731 |
+
Q
|
732 |
+
Q
|
733 |
+
q
|
734 |
+
1 0 0 1 91.03937 3 cm
|
735 |
+
Q
|
736 |
+
q
|
737 |
+
Q
|
738 |
+
Q
|
739 |
+
q
|
740 |
+
Q
|
741 |
+
Q
|
742 |
+
q
|
743 |
+
1 0 0 1 62.69291 520.3701 cm
|
744 |
+
Q
|
745 |
+
q
|
746 |
+
1 0 0 1 62.69291 514.3701 cm
|
747 |
+
Q
|
748 |
+
q
|
749 |
+
1 0 0 1 62.69291 514.3701 cm
|
750 |
+
Q
|
751 |
+
q
|
752 |
+
1 0 0 1 62.69291 502.3701 cm
|
753 |
+
0 0 0 rg
|
754 |
+
BT /F1 10 Tf 12 TL ET
|
755 |
+
q
|
756 |
+
1 0 0 1 6 -3 cm
|
757 |
+
q
|
758 |
+
0 0 0 rg
|
759 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (2.) Tj T* -5.66 0 Td ET
|
760 |
+
Q
|
761 |
+
Q
|
762 |
+
q
|
763 |
+
1 0 0 1 23 -3 cm
|
764 |
+
q
|
765 |
+
0 0 0 rg
|
766 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Szenario "Einstellungen zur Bonit\344tspr\374fung":) Tj T* ET
|
767 |
+
Q
|
768 |
+
Q
|
769 |
+
q
|
770 |
+
Q
|
771 |
+
Q
|
772 |
+
q
|
773 |
+
1 0 0 1 62.69291 502.3701 cm
|
774 |
+
Q
|
775 |
+
q
|
776 |
+
1 0 0 1 62.69291 484.3701 cm
|
777 |
+
q
|
778 |
+
0 0 0 rg
|
779 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 1:) Tj T* ET
|
780 |
+
Q
|
781 |
+
Q
|
782 |
+
q
|
783 |
+
1 0 0 1 62.69291 478.3701 cm
|
784 |
+
Q
|
785 |
+
q
|
786 |
+
1 0 0 1 62.69291 280.3701 cm
|
787 |
+
0 0 0 rg
|
788 |
+
BT /F1 10 Tf 12 TL ET
|
789 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
790 |
+
q
|
791 |
+
1 0 0 1 20 192 cm
|
792 |
+
Q
|
793 |
+
q
|
794 |
+
1 0 0 1 20 177 cm
|
795 |
+
0 0 0 rg
|
796 |
+
BT /F1 10 Tf 12 TL ET
|
797 |
+
q
|
798 |
+
1 0 0 1 6 3 cm
|
799 |
+
q
|
800 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
801 |
+
Q
|
802 |
+
Q
|
803 |
+
q
|
804 |
+
1 0 0 1 91.03937 3 cm
|
805 |
+
q
|
806 |
+
0 0 0 rg
|
807 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Das Expercash-Scoring-Modul ist installiert und ich bin im Backend angemeldet) Tj T* ET
|
808 |
+
Q
|
809 |
+
Q
|
810 |
+
q
|
811 |
+
Q
|
812 |
+
Q
|
813 |
+
q
|
814 |
+
1 0 0 1 20 162 cm
|
815 |
+
0 0 0 rg
|
816 |
+
BT /F1 10 Tf 12 TL ET
|
817 |
+
q
|
818 |
+
1 0 0 1 6 3 cm
|
819 |
+
q
|
820 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
821 |
+
Q
|
822 |
+
Q
|
823 |
+
q
|
824 |
+
1 0 0 1 91.03937 3 cm
|
825 |
+
q
|
826 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F1 10 Tf 0 0 0 rg (den Punkt ) Tj /F4 10 Tf (Bonit\344tspr\374fung ) Tj /F1 10 Tf (im Konfigurationsbereich von Magento \366ffne) Tj T* ET
|
827 |
+
Q
|
828 |
+
Q
|
829 |
+
q
|
830 |
+
Q
|
831 |
+
Q
|
832 |
+
q
|
833 |
+
1 0 0 1 20 147 cm
|
834 |
+
0 0 0 rg
|
835 |
+
BT /F1 10 Tf 12 TL ET
|
836 |
+
q
|
837 |
+
1 0 0 1 6 3 cm
|
838 |
+
q
|
839 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
840 |
+
Q
|
841 |
+
Q
|
842 |
+
q
|
843 |
+
1 0 0 1 91.03937 3 cm
|
844 |
+
q
|
845 |
+
0 0 0 rg
|
846 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
847 |
+
Q
|
848 |
+
Q
|
849 |
+
q
|
850 |
+
Q
|
851 |
+
Q
|
852 |
+
q
|
853 |
+
1 0 0 1 20 0 cm
|
854 |
+
0 0 0 rg
|
855 |
+
BT /F1 10 Tf 12 TL ET
|
856 |
+
q
|
857 |
+
1 0 0 1 6 135 cm
|
858 |
+
q
|
859 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
860 |
+
Q
|
861 |
+
Q
|
862 |
+
q
|
863 |
+
1 0 0 1 91.03937 123 cm
|
864 |
+
q
|
865 |
+
0 0 0 rg
|
866 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 3.024039 Tw (finde ich dort die folgenden Optionen unter dem Punkt "Einstellungen zur) Tj T* 0 Tw (Bonit\344tspr\374fung") Tj T* ET
|
867 |
+
Q
|
868 |
+
Q
|
869 |
+
q
|
870 |
+
1 0 0 1 91.03937 117 cm
|
871 |
+
Q
|
872 |
+
q
|
873 |
+
1 0 0 1 91.03937 117 cm
|
874 |
+
Q
|
875 |
+
q
|
876 |
+
1 0 0 1 91.03937 93 cm
|
877 |
+
0 0 0 rg
|
878 |
+
BT /F1 10 Tf 12 TL ET
|
879 |
+
q
|
880 |
+
1 0 0 1 6 9 cm
|
881 |
+
q
|
882 |
+
0 0 0 rg
|
883 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
884 |
+
Q
|
885 |
+
Q
|
886 |
+
q
|
887 |
+
1 0 0 1 23 -3 cm
|
888 |
+
q
|
889 |
+
BT 1 0 0 1 0 14 Tm .517549 Tw 12 TL /F4 10 Tf 0 0 0 rg (Mindestbetrag um eine Bonit\344tspr\374fung durchf\374hren zu k\366nnen ) Tj /F1 10 Tf (mit einem) Tj T* 0 Tw (Textfeld f\374r den Mindestbetrag) Tj T* ET
|
890 |
+
Q
|
891 |
+
Q
|
892 |
+
q
|
893 |
+
Q
|
894 |
+
Q
|
895 |
+
q
|
896 |
+
1 0 0 1 91.03937 87 cm
|
897 |
+
Q
|
898 |
+
q
|
899 |
+
1 0 0 1 91.03937 63 cm
|
900 |
+
0 0 0 rg
|
901 |
+
BT /F1 10 Tf 12 TL ET
|
902 |
+
q
|
903 |
+
1 0 0 1 6 9 cm
|
904 |
+
q
|
905 |
+
0 0 0 rg
|
906 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
907 |
+
Q
|
908 |
+
Q
|
909 |
+
q
|
910 |
+
1 0 0 1 23 -3 cm
|
911 |
+
q
|
912 |
+
BT 1 0 0 1 0 14 Tm 2.495771 Tw 12 TL /F4 10 Tf 0 0 0 rg (F\374r diese Kundengruppen keine Bonit\344tspr\374fung durchf\374hren ) Tj /F1 10 Tf (mit einer) Tj T* 0 Tw (Mehrfachauswahl der Kundengruppen) Tj T* ET
|
913 |
+
Q
|
914 |
+
Q
|
915 |
+
q
|
916 |
+
Q
|
917 |
+
Q
|
918 |
+
q
|
919 |
+
1 0 0 1 91.03937 57 cm
|
920 |
+
Q
|
921 |
+
q
|
922 |
+
1 0 0 1 91.03937 33 cm
|
923 |
+
0 0 0 rg
|
924 |
+
BT /F1 10 Tf 12 TL ET
|
925 |
+
q
|
926 |
+
1 0 0 1 6 9 cm
|
927 |
+
q
|
928 |
+
0 0 0 rg
|
929 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
930 |
+
Q
|
931 |
+
Q
|
932 |
+
q
|
933 |
+
1 0 0 1 23 -3 cm
|
934 |
+
q
|
935 |
+
BT 1 0 0 1 0 14 Tm 2.322549 Tw 12 TL /F4 10 Tf 0 0 0 rg (Wenn kein Ergebnis ermittelt werden konnte, ordne Kunden folgenden) Tj T* 0 Tw (Ampelwert zu) Tj /F1 10 Tf (, mit einer Auswahl der Ampelwerte 'rot', 'gelb', 'gr\374n') Tj T* ET
|
936 |
+
Q
|
937 |
+
Q
|
938 |
+
q
|
939 |
+
Q
|
940 |
+
Q
|
941 |
+
q
|
942 |
+
1 0 0 1 91.03937 27 cm
|
943 |
+
Q
|
944 |
+
q
|
945 |
+
1 0 0 1 91.03937 3 cm
|
946 |
+
0 0 0 rg
|
947 |
+
BT /F1 10 Tf 12 TL ET
|
948 |
+
q
|
949 |
+
1 0 0 1 6 9 cm
|
950 |
+
q
|
951 |
+
0 0 0 rg
|
952 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
953 |
+
Q
|
954 |
+
Q
|
955 |
+
q
|
956 |
+
1 0 0 1 23 -3 cm
|
957 |
+
q
|
958 |
+
0 0 0 rg
|
959 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 5.798799 Tw (ein Auswahlfeld mit Zahlarten die unabh\344ngig vom Ergebnis der) Tj T* 0 Tw (Bonit\344tspr\374fung angezeigt werden sollen) Tj T* ET
|
960 |
+
Q
|
961 |
+
Q
|
962 |
+
q
|
963 |
+
Q
|
964 |
+
Q
|
965 |
+
q
|
966 |
+
1 0 0 1 91.03937 3 cm
|
967 |
+
Q
|
968 |
+
q
|
969 |
+
Q
|
970 |
+
Q
|
971 |
+
q
|
972 |
+
Q
|
973 |
+
Q
|
974 |
+
q
|
975 |
+
1 0 0 1 62.69291 280.3701 cm
|
976 |
+
Q
|
977 |
+
q
|
978 |
+
1 0 0 1 62.69291 274.3701 cm
|
979 |
+
Q
|
980 |
+
q
|
981 |
+
1 0 0 1 62.69291 274.3701 cm
|
982 |
+
Q
|
983 |
+
q
|
984 |
+
1 0 0 1 62.69291 262.3701 cm
|
985 |
+
0 0 0 rg
|
986 |
+
BT /F1 10 Tf 12 TL ET
|
987 |
+
q
|
988 |
+
1 0 0 1 6 -3 cm
|
989 |
+
q
|
990 |
+
0 0 0 rg
|
991 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (3.) Tj T* -5.66 0 Td ET
|
992 |
+
Q
|
993 |
+
Q
|
994 |
+
q
|
995 |
+
1 0 0 1 23 -3 cm
|
996 |
+
q
|
997 |
+
0 0 0 rg
|
998 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Szenario "G\374ltigkeit des Ergebnisses":) Tj T* ET
|
999 |
+
Q
|
1000 |
+
Q
|
1001 |
+
q
|
1002 |
+
Q
|
1003 |
+
Q
|
1004 |
+
q
|
1005 |
+
1 0 0 1 62.69291 262.3701 cm
|
1006 |
+
Q
|
1007 |
+
q
|
1008 |
+
1 0 0 1 62.69291 244.3701 cm
|
1009 |
+
q
|
1010 |
+
0 0 0 rg
|
1011 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 1:) Tj T* ET
|
1012 |
+
Q
|
1013 |
+
Q
|
1014 |
+
q
|
1015 |
+
1 0 0 1 62.69291 238.3701 cm
|
1016 |
+
Q
|
1017 |
+
q
|
1018 |
+
1 0 0 1 62.69291 187.3701 cm
|
1019 |
+
0 0 0 rg
|
1020 |
+
BT /F1 10 Tf 12 TL ET
|
1021 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
1022 |
+
q
|
1023 |
+
1 0 0 1 20 45 cm
|
1024 |
+
Q
|
1025 |
+
q
|
1026 |
+
1 0 0 1 20 30 cm
|
1027 |
+
0 0 0 rg
|
1028 |
+
BT /F1 10 Tf 12 TL ET
|
1029 |
+
q
|
1030 |
+
1 0 0 1 6 3 cm
|
1031 |
+
q
|
1032 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
1033 |
+
Q
|
1034 |
+
Q
|
1035 |
+
q
|
1036 |
+
1 0 0 1 91.03937 3 cm
|
1037 |
+
q
|
1038 |
+
0 0 0 rg
|
1039 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Das Expercash-Scoring-Modul ist installiert und ich bin im Backend angemeldet) Tj T* ET
|
1040 |
+
Q
|
1041 |
+
Q
|
1042 |
+
q
|
1043 |
+
Q
|
1044 |
+
Q
|
1045 |
+
q
|
1046 |
+
1 0 0 1 20 15 cm
|
1047 |
+
0 0 0 rg
|
1048 |
+
BT /F1 10 Tf 12 TL ET
|
1049 |
+
q
|
1050 |
+
1 0 0 1 6 3 cm
|
1051 |
+
q
|
1052 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
1053 |
+
Q
|
1054 |
+
Q
|
1055 |
+
q
|
1056 |
+
1 0 0 1 91.03937 3 cm
|
1057 |
+
q
|
1058 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F1 10 Tf 0 0 0 rg (den Punkt ) Tj /F4 10 Tf (Bonit\344tspr\374fung ) Tj /F1 10 Tf (im Konfigurationsbereich von Magento \366ffne) Tj T* ET
|
1059 |
+
Q
|
1060 |
+
Q
|
1061 |
+
q
|
1062 |
+
Q
|
1063 |
+
Q
|
1064 |
+
q
|
1065 |
+
1 0 0 1 20 0 cm
|
1066 |
+
0 0 0 rg
|
1067 |
+
BT /F1 10 Tf 12 TL ET
|
1068 |
+
q
|
1069 |
+
1 0 0 1 6 3 cm
|
1070 |
+
q
|
1071 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
1072 |
+
Q
|
1073 |
+
Q
|
1074 |
+
q
|
1075 |
+
1 0 0 1 91.03937 3 cm
|
1076 |
+
q
|
1077 |
+
0 0 0 rg
|
1078 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
1079 |
+
Q
|
1080 |
+
Q
|
1081 |
+
q
|
1082 |
+
Q
|
1083 |
+
Q
|
1084 |
+
q
|
1085 |
+
Q
|
1086 |
+
Q
|
1087 |
+
|
1088 |
+
endstream
|
1089 |
+
endobj
|
1090 |
+
% 'R28': class PDFStream
|
1091 |
+
28 0 obj
|
1092 |
+
% page stream
|
1093 |
+
<< /Length 11200 >>
|
1094 |
+
stream
|
1095 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
1096 |
+
q
|
1097 |
+
1 0 0 1 62.69291 550.3701 cm
|
1098 |
+
0 0 0 rg
|
1099 |
+
BT /F1 10 Tf 12 TL ET
|
1100 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
1101 |
+
q
|
1102 |
+
1 0 0 1 20 0 cm
|
1103 |
+
0 0 0 rg
|
1104 |
+
BT /F1 10 Tf 12 TL ET
|
1105 |
+
q
|
1106 |
+
1 0 0 1 6 231 cm
|
1107 |
+
q
|
1108 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
1109 |
+
Q
|
1110 |
+
Q
|
1111 |
+
q
|
1112 |
+
1 0 0 1 91.03937 219 cm
|
1113 |
+
q
|
1114 |
+
0 0 0 rg
|
1115 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 4.636039 Tw (finde ich dort die folgenden Optionen unter dem Punkt "G\374ltigkeit des) Tj T* 0 Tw (Ergebnisses") Tj T* ET
|
1116 |
+
Q
|
1117 |
+
Q
|
1118 |
+
q
|
1119 |
+
1 0 0 1 91.03937 213 cm
|
1120 |
+
Q
|
1121 |
+
q
|
1122 |
+
1 0 0 1 91.03937 213 cm
|
1123 |
+
Q
|
1124 |
+
q
|
1125 |
+
1 0 0 1 91.03937 189 cm
|
1126 |
+
0 0 0 rg
|
1127 |
+
BT /F1 10 Tf 12 TL ET
|
1128 |
+
q
|
1129 |
+
1 0 0 1 6 9 cm
|
1130 |
+
q
|
1131 |
+
0 0 0 rg
|
1132 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1133 |
+
Q
|
1134 |
+
Q
|
1135 |
+
q
|
1136 |
+
1 0 0 1 23 -3 cm
|
1137 |
+
q
|
1138 |
+
BT 1 0 0 1 0 14 Tm .153377 Tw 12 TL /F4 10 Tf 0 0 0 rg (Maximale Anzahl an Bonit\344tspr\374fungen pro Session ) Tj /F1 10 Tf (mit einem Textfeld f\374r) Tj T* 0 Tw (die maximal zul\344ssige Anzahl an Pr\374fungen pro Session) Tj T* ET
|
1139 |
+
Q
|
1140 |
+
Q
|
1141 |
+
q
|
1142 |
+
Q
|
1143 |
+
Q
|
1144 |
+
q
|
1145 |
+
1 0 0 1 91.03937 183 cm
|
1146 |
+
Q
|
1147 |
+
q
|
1148 |
+
1 0 0 1 91.03937 147 cm
|
1149 |
+
0 0 0 rg
|
1150 |
+
BT /F1 10 Tf 12 TL ET
|
1151 |
+
q
|
1152 |
+
1 0 0 1 6 21 cm
|
1153 |
+
q
|
1154 |
+
0 0 0 rg
|
1155 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1156 |
+
Q
|
1157 |
+
Q
|
1158 |
+
q
|
1159 |
+
1 0 0 1 23 -3 cm
|
1160 |
+
q
|
1161 |
+
BT 1 0 0 1 0 26 Tm 2.130044 Tw 12 TL /F4 10 Tf 0 0 0 rg (Falls die maximale Anzahl an Pr\374fungen pro Session \374berschritten ist,) Tj T* 0 Tw 3.980044 Tw (ordne den Kunden folgenden Ampelwert zu) Tj /F1 10 Tf (, mit einer Auswahl der) Tj T* 0 Tw (Ampelwerte 'rot', 'gelb', 'gr\374n') Tj T* ET
|
1162 |
+
Q
|
1163 |
+
Q
|
1164 |
+
q
|
1165 |
+
Q
|
1166 |
+
Q
|
1167 |
+
q
|
1168 |
+
1 0 0 1 91.03937 141 cm
|
1169 |
+
Q
|
1170 |
+
q
|
1171 |
+
1 0 0 1 91.03937 117 cm
|
1172 |
+
0 0 0 rg
|
1173 |
+
BT /F1 10 Tf 12 TL ET
|
1174 |
+
q
|
1175 |
+
1 0 0 1 6 9 cm
|
1176 |
+
q
|
1177 |
+
0 0 0 rg
|
1178 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1179 |
+
Q
|
1180 |
+
Q
|
1181 |
+
q
|
1182 |
+
1 0 0 1 23 -3 cm
|
1183 |
+
q
|
1184 |
+
BT 1 0 0 1 0 14 Tm 3.862039 Tw 12 TL /F4 10 Tf 0 0 0 rg (Maximale Anzahl an Pr\374fungen pro Tag ) Tj /F1 10 Tf (mit einem Textfeld f\374r die) Tj T* 0 Tw (maximale Anzahl an Bonit\344tspr\374fungen pro Tag) Tj T* ET
|
1185 |
+
Q
|
1186 |
+
Q
|
1187 |
+
q
|
1188 |
+
Q
|
1189 |
+
Q
|
1190 |
+
q
|
1191 |
+
1 0 0 1 91.03937 111 cm
|
1192 |
+
Q
|
1193 |
+
q
|
1194 |
+
1 0 0 1 91.03937 75 cm
|
1195 |
+
0 0 0 rg
|
1196 |
+
BT /F1 10 Tf 12 TL ET
|
1197 |
+
q
|
1198 |
+
1 0 0 1 6 21 cm
|
1199 |
+
q
|
1200 |
+
0 0 0 rg
|
1201 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1202 |
+
Q
|
1203 |
+
Q
|
1204 |
+
q
|
1205 |
+
1 0 0 1 23 -3 cm
|
1206 |
+
q
|
1207 |
+
BT 1 0 0 1 0 26 Tm 1.026039 Tw 12 TL /F4 10 Tf 0 0 0 rg (Wenn die maximale Anzahl pro Tag \374berschritten ist, ordne den Kunden) Tj T* 0 Tw 1.775599 Tw (folgenden Ampelwert zu) Tj /F1 10 Tf (, mit einer Auswahl der Ampelwerte 'rot', 'gelb',) Tj T* 0 Tw ('gr\374n') Tj T* ET
|
1208 |
+
Q
|
1209 |
+
Q
|
1210 |
+
q
|
1211 |
+
Q
|
1212 |
+
Q
|
1213 |
+
q
|
1214 |
+
1 0 0 1 91.03937 69 cm
|
1215 |
+
Q
|
1216 |
+
q
|
1217 |
+
1 0 0 1 91.03937 45 cm
|
1218 |
+
0 0 0 rg
|
1219 |
+
BT /F1 10 Tf 12 TL ET
|
1220 |
+
q
|
1221 |
+
1 0 0 1 6 9 cm
|
1222 |
+
q
|
1223 |
+
0 0 0 rg
|
1224 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1225 |
+
Q
|
1226 |
+
Q
|
1227 |
+
q
|
1228 |
+
1 0 0 1 23 -3 cm
|
1229 |
+
q
|
1230 |
+
BT 1 0 0 1 0 14 Tm 3.083039 Tw 12 TL /F4 10 Tf 0 0 0 rg (Ergebnis der Bonit\344tspr\374fung ist f\374r X Tage g\374ltig) Tj /F1 10 Tf (, mit einer Ja/Nein) Tj T* 0 Tw (Auswahl) Tj T* ET
|
1231 |
+
Q
|
1232 |
+
Q
|
1233 |
+
q
|
1234 |
+
Q
|
1235 |
+
Q
|
1236 |
+
q
|
1237 |
+
1 0 0 1 91.03937 39 cm
|
1238 |
+
Q
|
1239 |
+
q
|
1240 |
+
1 0 0 1 91.03937 3 cm
|
1241 |
+
0 0 0 rg
|
1242 |
+
BT /F1 10 Tf 12 TL ET
|
1243 |
+
q
|
1244 |
+
1 0 0 1 6 21 cm
|
1245 |
+
q
|
1246 |
+
0 0 0 rg
|
1247 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1248 |
+
Q
|
1249 |
+
Q
|
1250 |
+
q
|
1251 |
+
1 0 0 1 23 -3 cm
|
1252 |
+
q
|
1253 |
+
BT 1 0 0 1 0 26 Tm .891155 Tw 12 TL /F4 10 Tf 0 0 0 rg (F\374hre erneut die Bonit\344tspr\374fung nach X Tagen durch) Tj /F1 10 Tf (, Textfeld, welches) Tj T* 0 Tw 1.427039 Tw (nur erscheint, wenn "Ergebnis der Bonit\344tspr\374fung ist f\374r X Tage g\374ltig") Tj T* 0 Tw (aktiviert ist) Tj T* ET
|
1254 |
+
Q
|
1255 |
+
Q
|
1256 |
+
q
|
1257 |
+
Q
|
1258 |
+
Q
|
1259 |
+
q
|
1260 |
+
1 0 0 1 91.03937 3 cm
|
1261 |
+
Q
|
1262 |
+
q
|
1263 |
+
Q
|
1264 |
+
Q
|
1265 |
+
q
|
1266 |
+
Q
|
1267 |
+
Q
|
1268 |
+
q
|
1269 |
+
1 0 0 1 62.69291 550.3701 cm
|
1270 |
+
Q
|
1271 |
+
q
|
1272 |
+
1 0 0 1 62.69291 544.3701 cm
|
1273 |
+
Q
|
1274 |
+
q
|
1275 |
+
1 0 0 1 62.69291 544.3701 cm
|
1276 |
+
Q
|
1277 |
+
q
|
1278 |
+
1 0 0 1 62.69291 532.3701 cm
|
1279 |
+
0 0 0 rg
|
1280 |
+
BT /F1 10 Tf 12 TL ET
|
1281 |
+
q
|
1282 |
+
1 0 0 1 6 -3 cm
|
1283 |
+
q
|
1284 |
+
0 0 0 rg
|
1285 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (4.) Tj T* -5.66 0 Td ET
|
1286 |
+
Q
|
1287 |
+
Q
|
1288 |
+
q
|
1289 |
+
1 0 0 1 23 -3 cm
|
1290 |
+
q
|
1291 |
+
0 0 0 rg
|
1292 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Szenario "Konfiguration f\374r die Gruppe mit Ampelwert rot") Tj T* ET
|
1293 |
+
Q
|
1294 |
+
Q
|
1295 |
+
q
|
1296 |
+
Q
|
1297 |
+
Q
|
1298 |
+
q
|
1299 |
+
1 0 0 1 62.69291 532.3701 cm
|
1300 |
+
Q
|
1301 |
+
q
|
1302 |
+
1 0 0 1 62.69291 514.3701 cm
|
1303 |
+
q
|
1304 |
+
0 0 0 rg
|
1305 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 1:) Tj T* ET
|
1306 |
+
Q
|
1307 |
+
Q
|
1308 |
+
q
|
1309 |
+
1 0 0 1 62.69291 508.3701 cm
|
1310 |
+
Q
|
1311 |
+
q
|
1312 |
+
1 0 0 1 62.69291 412.3701 cm
|
1313 |
+
0 0 0 rg
|
1314 |
+
BT /F1 10 Tf 12 TL ET
|
1315 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
1316 |
+
q
|
1317 |
+
1 0 0 1 20 90 cm
|
1318 |
+
Q
|
1319 |
+
q
|
1320 |
+
1 0 0 1 20 75 cm
|
1321 |
+
0 0 0 rg
|
1322 |
+
BT /F1 10 Tf 12 TL ET
|
1323 |
+
q
|
1324 |
+
1 0 0 1 6 3 cm
|
1325 |
+
q
|
1326 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
1327 |
+
Q
|
1328 |
+
Q
|
1329 |
+
q
|
1330 |
+
1 0 0 1 91.03937 3 cm
|
1331 |
+
q
|
1332 |
+
0 0 0 rg
|
1333 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Das Expercash-Scoring-Modul ist installiert und ich bin im Backend angemeldet) Tj T* ET
|
1334 |
+
Q
|
1335 |
+
Q
|
1336 |
+
q
|
1337 |
+
Q
|
1338 |
+
Q
|
1339 |
+
q
|
1340 |
+
1 0 0 1 20 60 cm
|
1341 |
+
0 0 0 rg
|
1342 |
+
BT /F1 10 Tf 12 TL ET
|
1343 |
+
q
|
1344 |
+
1 0 0 1 6 3 cm
|
1345 |
+
q
|
1346 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
1347 |
+
Q
|
1348 |
+
Q
|
1349 |
+
q
|
1350 |
+
1 0 0 1 91.03937 3 cm
|
1351 |
+
q
|
1352 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F1 10 Tf 0 0 0 rg (den Punkt ) Tj /F4 10 Tf (Bonit\344tspr\374fung ) Tj /F1 10 Tf (im Konfigurationsbereich von Magento \366ffne) Tj T* ET
|
1353 |
+
Q
|
1354 |
+
Q
|
1355 |
+
q
|
1356 |
+
Q
|
1357 |
+
Q
|
1358 |
+
q
|
1359 |
+
1 0 0 1 20 45 cm
|
1360 |
+
0 0 0 rg
|
1361 |
+
BT /F1 10 Tf 12 TL ET
|
1362 |
+
q
|
1363 |
+
1 0 0 1 6 3 cm
|
1364 |
+
q
|
1365 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
1366 |
+
Q
|
1367 |
+
Q
|
1368 |
+
q
|
1369 |
+
1 0 0 1 91.03937 3 cm
|
1370 |
+
q
|
1371 |
+
0 0 0 rg
|
1372 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
1373 |
+
Q
|
1374 |
+
Q
|
1375 |
+
q
|
1376 |
+
Q
|
1377 |
+
Q
|
1378 |
+
q
|
1379 |
+
1 0 0 1 20 0 cm
|
1380 |
+
0 0 0 rg
|
1381 |
+
BT /F1 10 Tf 12 TL ET
|
1382 |
+
q
|
1383 |
+
1 0 0 1 6 33 cm
|
1384 |
+
q
|
1385 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
1386 |
+
Q
|
1387 |
+
Q
|
1388 |
+
q
|
1389 |
+
1 0 0 1 91.03937 21 cm
|
1390 |
+
q
|
1391 |
+
0 0 0 rg
|
1392 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 1.586399 Tw (finde ich dort die folgenden Optionen unter dem Punkt "Konfiguration f\374r die) Tj T* 0 Tw (Gruppe mit Ampelwert rot") Tj T* ET
|
1393 |
+
Q
|
1394 |
+
Q
|
1395 |
+
q
|
1396 |
+
1 0 0 1 91.03937 15 cm
|
1397 |
+
Q
|
1398 |
+
q
|
1399 |
+
1 0 0 1 91.03937 15 cm
|
1400 |
+
Q
|
1401 |
+
q
|
1402 |
+
1 0 0 1 91.03937 3 cm
|
1403 |
+
0 0 0 rg
|
1404 |
+
BT /F1 10 Tf 12 TL ET
|
1405 |
+
q
|
1406 |
+
1 0 0 1 6 -3 cm
|
1407 |
+
q
|
1408 |
+
0 0 0 rg
|
1409 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1410 |
+
Q
|
1411 |
+
Q
|
1412 |
+
q
|
1413 |
+
1 0 0 1 23 -3 cm
|
1414 |
+
q
|
1415 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F4 10 Tf 0 0 0 rg (Folgende Zahlarten zulassen ) Tj /F1 10 Tf (mit einer Mehrfachauswahl f\374r die Zahlarten) Tj T* ET
|
1416 |
+
Q
|
1417 |
+
Q
|
1418 |
+
q
|
1419 |
+
Q
|
1420 |
+
Q
|
1421 |
+
q
|
1422 |
+
1 0 0 1 91.03937 3 cm
|
1423 |
+
Q
|
1424 |
+
q
|
1425 |
+
Q
|
1426 |
+
Q
|
1427 |
+
q
|
1428 |
+
Q
|
1429 |
+
Q
|
1430 |
+
q
|
1431 |
+
1 0 0 1 62.69291 412.3701 cm
|
1432 |
+
Q
|
1433 |
+
q
|
1434 |
+
1 0 0 1 62.69291 406.3701 cm
|
1435 |
+
Q
|
1436 |
+
q
|
1437 |
+
1 0 0 1 62.69291 406.3701 cm
|
1438 |
+
Q
|
1439 |
+
q
|
1440 |
+
1 0 0 1 62.69291 394.3701 cm
|
1441 |
+
0 0 0 rg
|
1442 |
+
BT /F1 10 Tf 12 TL ET
|
1443 |
+
q
|
1444 |
+
1 0 0 1 6 -3 cm
|
1445 |
+
q
|
1446 |
+
0 0 0 rg
|
1447 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (5.) Tj T* -5.66 0 Td ET
|
1448 |
+
Q
|
1449 |
+
Q
|
1450 |
+
q
|
1451 |
+
1 0 0 1 23 -3 cm
|
1452 |
+
q
|
1453 |
+
0 0 0 rg
|
1454 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Szenario "Konfiguration f\374r die Gruppe mit Ampelwert gelb") Tj T* ET
|
1455 |
+
Q
|
1456 |
+
Q
|
1457 |
+
q
|
1458 |
+
Q
|
1459 |
+
Q
|
1460 |
+
q
|
1461 |
+
1 0 0 1 62.69291 394.3701 cm
|
1462 |
+
Q
|
1463 |
+
q
|
1464 |
+
1 0 0 1 62.69291 376.3701 cm
|
1465 |
+
q
|
1466 |
+
0 0 0 rg
|
1467 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 1:) Tj T* ET
|
1468 |
+
Q
|
1469 |
+
Q
|
1470 |
+
q
|
1471 |
+
1 0 0 1 62.69291 370.3701 cm
|
1472 |
+
Q
|
1473 |
+
q
|
1474 |
+
1 0 0 1 62.69291 244.3701 cm
|
1475 |
+
0 0 0 rg
|
1476 |
+
BT /F1 10 Tf 12 TL ET
|
1477 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
1478 |
+
q
|
1479 |
+
1 0 0 1 20 120 cm
|
1480 |
+
Q
|
1481 |
+
q
|
1482 |
+
1 0 0 1 20 105 cm
|
1483 |
+
0 0 0 rg
|
1484 |
+
BT /F1 10 Tf 12 TL ET
|
1485 |
+
q
|
1486 |
+
1 0 0 1 6 3 cm
|
1487 |
+
q
|
1488 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
1489 |
+
Q
|
1490 |
+
Q
|
1491 |
+
q
|
1492 |
+
1 0 0 1 91.03937 3 cm
|
1493 |
+
q
|
1494 |
+
0 0 0 rg
|
1495 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Das Expercash-Scoring-Modul ist installiert und ich bin im Backend angemeldet) Tj T* ET
|
1496 |
+
Q
|
1497 |
+
Q
|
1498 |
+
q
|
1499 |
+
Q
|
1500 |
+
Q
|
1501 |
+
q
|
1502 |
+
1 0 0 1 20 90 cm
|
1503 |
+
0 0 0 rg
|
1504 |
+
BT /F1 10 Tf 12 TL ET
|
1505 |
+
q
|
1506 |
+
1 0 0 1 6 3 cm
|
1507 |
+
q
|
1508 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
1509 |
+
Q
|
1510 |
+
Q
|
1511 |
+
q
|
1512 |
+
1 0 0 1 91.03937 3 cm
|
1513 |
+
q
|
1514 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F1 10 Tf 0 0 0 rg (den Punkt ) Tj /F4 10 Tf (Bonit\344tspr\374fung ) Tj /F1 10 Tf (im Konfigurationsbereich von Magento \366ffne) Tj T* ET
|
1515 |
+
Q
|
1516 |
+
Q
|
1517 |
+
q
|
1518 |
+
Q
|
1519 |
+
Q
|
1520 |
+
q
|
1521 |
+
1 0 0 1 20 75 cm
|
1522 |
+
0 0 0 rg
|
1523 |
+
BT /F1 10 Tf 12 TL ET
|
1524 |
+
q
|
1525 |
+
1 0 0 1 6 3 cm
|
1526 |
+
q
|
1527 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
1528 |
+
Q
|
1529 |
+
Q
|
1530 |
+
q
|
1531 |
+
1 0 0 1 91.03937 3 cm
|
1532 |
+
q
|
1533 |
+
0 0 0 rg
|
1534 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
1535 |
+
Q
|
1536 |
+
Q
|
1537 |
+
q
|
1538 |
+
Q
|
1539 |
+
Q
|
1540 |
+
q
|
1541 |
+
1 0 0 1 20 0 cm
|
1542 |
+
0 0 0 rg
|
1543 |
+
BT /F1 10 Tf 12 TL ET
|
1544 |
+
q
|
1545 |
+
1 0 0 1 6 63 cm
|
1546 |
+
q
|
1547 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
1548 |
+
Q
|
1549 |
+
Q
|
1550 |
+
q
|
1551 |
+
1 0 0 1 91.03937 51 cm
|
1552 |
+
q
|
1553 |
+
0 0 0 rg
|
1554 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 1.586399 Tw (finde ich dort die folgenden Optionen unter dem Punkt "Konfiguration f\374r die) Tj T* 0 Tw (Gruppe mit Ampelwert rot") Tj T* ET
|
1555 |
+
Q
|
1556 |
+
Q
|
1557 |
+
q
|
1558 |
+
1 0 0 1 91.03937 45 cm
|
1559 |
+
Q
|
1560 |
+
q
|
1561 |
+
1 0 0 1 91.03937 45 cm
|
1562 |
+
Q
|
1563 |
+
q
|
1564 |
+
1 0 0 1 91.03937 33 cm
|
1565 |
+
0 0 0 rg
|
1566 |
+
BT /F1 10 Tf 12 TL ET
|
1567 |
+
q
|
1568 |
+
1 0 0 1 6 -3 cm
|
1569 |
+
q
|
1570 |
+
0 0 0 rg
|
1571 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1572 |
+
Q
|
1573 |
+
Q
|
1574 |
+
q
|
1575 |
+
1 0 0 1 23 -3 cm
|
1576 |
+
q
|
1577 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F4 10 Tf 0 0 0 rg (Folgende Zahlarten zulassen ) Tj /F1 10 Tf (mit einer Mehrfachauswahl f\374r die Zahlarten) Tj T* ET
|
1578 |
+
Q
|
1579 |
+
Q
|
1580 |
+
q
|
1581 |
+
Q
|
1582 |
+
Q
|
1583 |
+
q
|
1584 |
+
1 0 0 1 91.03937 27 cm
|
1585 |
+
Q
|
1586 |
+
q
|
1587 |
+
1 0 0 1 91.03937 3 cm
|
1588 |
+
0 0 0 rg
|
1589 |
+
BT /F1 10 Tf 12 TL ET
|
1590 |
+
q
|
1591 |
+
1 0 0 1 6 9 cm
|
1592 |
+
q
|
1593 |
+
0 0 0 rg
|
1594 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1595 |
+
Q
|
1596 |
+
Q
|
1597 |
+
q
|
1598 |
+
1 0 0 1 23 -3 cm
|
1599 |
+
q
|
1600 |
+
BT 1 0 0 1 0 14 Tm 4.16671 Tw 12 TL /F4 10 Tf 0 0 0 rg (Zus\344tzliche Bedingung die f\374r diese Gruppe gelten muss ) Tj /F1 10 Tf (mit einer) Tj T* 0 Tw (Auswahl der Identifikationsmerkmale f\374r diese Gruppe) Tj T* ET
|
1601 |
+
Q
|
1602 |
+
Q
|
1603 |
+
q
|
1604 |
+
Q
|
1605 |
+
Q
|
1606 |
+
q
|
1607 |
+
1 0 0 1 91.03937 3 cm
|
1608 |
+
Q
|
1609 |
+
q
|
1610 |
+
Q
|
1611 |
+
Q
|
1612 |
+
q
|
1613 |
+
Q
|
1614 |
+
Q
|
1615 |
+
q
|
1616 |
+
1 0 0 1 62.69291 244.3701 cm
|
1617 |
+
Q
|
1618 |
+
q
|
1619 |
+
1 0 0 1 62.69291 238.3701 cm
|
1620 |
+
Q
|
1621 |
+
q
|
1622 |
+
1 0 0 1 62.69291 238.3701 cm
|
1623 |
+
Q
|
1624 |
+
q
|
1625 |
+
1 0 0 1 62.69291 226.3701 cm
|
1626 |
+
0 0 0 rg
|
1627 |
+
BT /F1 10 Tf 12 TL ET
|
1628 |
+
q
|
1629 |
+
1 0 0 1 6 -3 cm
|
1630 |
+
q
|
1631 |
+
0 0 0 rg
|
1632 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (6.) Tj T* -5.66 0 Td ET
|
1633 |
+
Q
|
1634 |
+
Q
|
1635 |
+
q
|
1636 |
+
1 0 0 1 23 -3 cm
|
1637 |
+
q
|
1638 |
+
0 0 0 rg
|
1639 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Szenario "Konfiguration f\374r die Gruppe mit Ampelwert gr\374n") Tj T* ET
|
1640 |
+
Q
|
1641 |
+
Q
|
1642 |
+
q
|
1643 |
+
Q
|
1644 |
+
Q
|
1645 |
+
q
|
1646 |
+
1 0 0 1 62.69291 226.3701 cm
|
1647 |
+
Q
|
1648 |
+
q
|
1649 |
+
1 0 0 1 62.69291 208.3701 cm
|
1650 |
+
q
|
1651 |
+
0 0 0 rg
|
1652 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 1:) Tj T* ET
|
1653 |
+
Q
|
1654 |
+
Q
|
1655 |
+
q
|
1656 |
+
1 0 0 1 62.69291 202.3701 cm
|
1657 |
+
Q
|
1658 |
+
q
|
1659 |
+
1 0 0 1 62.69291 151.3701 cm
|
1660 |
+
0 0 0 rg
|
1661 |
+
BT /F1 10 Tf 12 TL ET
|
1662 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
1663 |
+
q
|
1664 |
+
1 0 0 1 20 45 cm
|
1665 |
+
Q
|
1666 |
+
q
|
1667 |
+
1 0 0 1 20 30 cm
|
1668 |
+
0 0 0 rg
|
1669 |
+
BT /F1 10 Tf 12 TL ET
|
1670 |
+
q
|
1671 |
+
1 0 0 1 6 3 cm
|
1672 |
+
q
|
1673 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
1674 |
+
Q
|
1675 |
+
Q
|
1676 |
+
q
|
1677 |
+
1 0 0 1 91.03937 3 cm
|
1678 |
+
q
|
1679 |
+
0 0 0 rg
|
1680 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Das Expercash-Scoring-Modul ist installiert und ich bin im Backend angemeldet) Tj T* ET
|
1681 |
+
Q
|
1682 |
+
Q
|
1683 |
+
q
|
1684 |
+
Q
|
1685 |
+
Q
|
1686 |
+
q
|
1687 |
+
1 0 0 1 20 15 cm
|
1688 |
+
0 0 0 rg
|
1689 |
+
BT /F1 10 Tf 12 TL ET
|
1690 |
+
q
|
1691 |
+
1 0 0 1 6 3 cm
|
1692 |
+
q
|
1693 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
1694 |
+
Q
|
1695 |
+
Q
|
1696 |
+
q
|
1697 |
+
1 0 0 1 91.03937 3 cm
|
1698 |
+
q
|
1699 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F1 10 Tf 0 0 0 rg (den Punkt ) Tj /F4 10 Tf (Bonit\344tspr\374fung ) Tj /F1 10 Tf (im Konfigurationsbereich von Magento \366ffne) Tj T* ET
|
1700 |
+
Q
|
1701 |
+
Q
|
1702 |
+
q
|
1703 |
+
Q
|
1704 |
+
Q
|
1705 |
+
q
|
1706 |
+
1 0 0 1 20 0 cm
|
1707 |
+
0 0 0 rg
|
1708 |
+
BT /F1 10 Tf 12 TL ET
|
1709 |
+
q
|
1710 |
+
1 0 0 1 6 3 cm
|
1711 |
+
q
|
1712 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
1713 |
+
Q
|
1714 |
+
Q
|
1715 |
+
q
|
1716 |
+
1 0 0 1 91.03937 3 cm
|
1717 |
+
q
|
1718 |
+
0 0 0 rg
|
1719 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
1720 |
+
Q
|
1721 |
+
Q
|
1722 |
+
q
|
1723 |
+
Q
|
1724 |
+
Q
|
1725 |
+
q
|
1726 |
+
Q
|
1727 |
+
Q
|
1728 |
+
|
1729 |
+
endstream
|
1730 |
+
endobj
|
1731 |
+
% 'R29': class PDFStream
|
1732 |
+
29 0 obj
|
1733 |
+
% page stream
|
1734 |
+
<< /Length 1544 >>
|
1735 |
+
stream
|
1736 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
1737 |
+
q
|
1738 |
+
1 0 0 1 62.69291 718.3701 cm
|
1739 |
+
0 0 0 rg
|
1740 |
+
BT /F1 10 Tf 12 TL ET
|
1741 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
1742 |
+
q
|
1743 |
+
1 0 0 1 20 0 cm
|
1744 |
+
0 0 0 rg
|
1745 |
+
BT /F1 10 Tf 12 TL ET
|
1746 |
+
q
|
1747 |
+
1 0 0 1 6 63 cm
|
1748 |
+
q
|
1749 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
1750 |
+
Q
|
1751 |
+
Q
|
1752 |
+
q
|
1753 |
+
1 0 0 1 91.03937 51 cm
|
1754 |
+
q
|
1755 |
+
0 0 0 rg
|
1756 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 1.586399 Tw (finde ich dort die folgenden Optionen unter dem Punkt "Konfiguration f\374r die) Tj T* 0 Tw (Gruppe mit Ampelwert rot") Tj T* ET
|
1757 |
+
Q
|
1758 |
+
Q
|
1759 |
+
q
|
1760 |
+
1 0 0 1 91.03937 45 cm
|
1761 |
+
Q
|
1762 |
+
q
|
1763 |
+
1 0 0 1 91.03937 45 cm
|
1764 |
+
Q
|
1765 |
+
q
|
1766 |
+
1 0 0 1 91.03937 33 cm
|
1767 |
+
0 0 0 rg
|
1768 |
+
BT /F1 10 Tf 12 TL ET
|
1769 |
+
q
|
1770 |
+
1 0 0 1 6 -3 cm
|
1771 |
+
q
|
1772 |
+
0 0 0 rg
|
1773 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1774 |
+
Q
|
1775 |
+
Q
|
1776 |
+
q
|
1777 |
+
1 0 0 1 23 -3 cm
|
1778 |
+
q
|
1779 |
+
BT 1 0 0 1 0 2 Tm 12 TL /F4 10 Tf 0 0 0 rg (Folgende Zahlarten zulassen ) Tj /F1 10 Tf (mit einer Mehrfachauswahl f\374r die Zahlarten) Tj T* ET
|
1780 |
+
Q
|
1781 |
+
Q
|
1782 |
+
q
|
1783 |
+
Q
|
1784 |
+
Q
|
1785 |
+
q
|
1786 |
+
1 0 0 1 91.03937 27 cm
|
1787 |
+
Q
|
1788 |
+
q
|
1789 |
+
1 0 0 1 91.03937 3 cm
|
1790 |
+
0 0 0 rg
|
1791 |
+
BT /F1 10 Tf 12 TL ET
|
1792 |
+
q
|
1793 |
+
1 0 0 1 6 9 cm
|
1794 |
+
q
|
1795 |
+
0 0 0 rg
|
1796 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 10.5 0 Td (\177) Tj T* -10.5 0 Td ET
|
1797 |
+
Q
|
1798 |
+
Q
|
1799 |
+
q
|
1800 |
+
1 0 0 1 23 -3 cm
|
1801 |
+
q
|
1802 |
+
BT 1 0 0 1 0 14 Tm 4.16671 Tw 12 TL /F4 10 Tf 0 0 0 rg (Zus\344tzliche Bedingung die f\374r diese Gruppe gelten muss ) Tj /F1 10 Tf (mit einer) Tj T* 0 Tw (Auswahl der Identifikationsmerkmale f\374r diese Gruppe) Tj T* ET
|
1803 |
+
Q
|
1804 |
+
Q
|
1805 |
+
q
|
1806 |
+
Q
|
1807 |
+
Q
|
1808 |
+
q
|
1809 |
+
1 0 0 1 91.03937 3 cm
|
1810 |
+
Q
|
1811 |
+
q
|
1812 |
+
Q
|
1813 |
+
Q
|
1814 |
+
q
|
1815 |
+
Q
|
1816 |
+
Q
|
1817 |
+
q
|
1818 |
+
1 0 0 1 62.69291 718.3701 cm
|
1819 |
+
Q
|
1820 |
+
q
|
1821 |
+
1 0 0 1 62.69291 718.3701 cm
|
1822 |
+
Q
|
1823 |
+
|
1824 |
+
endstream
|
1825 |
+
endobj
|
1826 |
+
% 'R30': class PDFStream
|
1827 |
+
30 0 obj
|
1828 |
+
% page stream
|
1829 |
+
<< /Length 10353 >>
|
1830 |
+
stream
|
1831 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
1832 |
+
q
|
1833 |
+
1 0 0 1 62.69291 772.3701 cm
|
1834 |
+
q
|
1835 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (Verhalten im Checkout) Tj T* ET
|
1836 |
+
Q
|
1837 |
+
Q
|
1838 |
+
q
|
1839 |
+
1 0 0 1 62.69291 760.3701 cm
|
1840 |
+
Q
|
1841 |
+
q
|
1842 |
+
1 0 0 1 62.69291 760.3701 cm
|
1843 |
+
Q
|
1844 |
+
q
|
1845 |
+
1 0 0 1 62.69291 748.3701 cm
|
1846 |
+
0 0 0 rg
|
1847 |
+
BT /F1 10 Tf 12 TL ET
|
1848 |
+
q
|
1849 |
+
1 0 0 1 6 -3 cm
|
1850 |
+
q
|
1851 |
+
0 0 0 rg
|
1852 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (1.) Tj T* -5.66 0 Td ET
|
1853 |
+
Q
|
1854 |
+
Q
|
1855 |
+
q
|
1856 |
+
1 0 0 1 23 -3 cm
|
1857 |
+
q
|
1858 |
+
0 0 0 rg
|
1859 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Szenario "Best\344tigen der AGB f\374r die Bonit\344tspr\374fung") Tj T* ET
|
1860 |
+
Q
|
1861 |
+
Q
|
1862 |
+
q
|
1863 |
+
Q
|
1864 |
+
Q
|
1865 |
+
q
|
1866 |
+
1 0 0 1 62.69291 748.3701 cm
|
1867 |
+
Q
|
1868 |
+
q
|
1869 |
+
1 0 0 1 62.69291 730.3701 cm
|
1870 |
+
q
|
1871 |
+
0 0 0 rg
|
1872 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 1:) Tj T* ET
|
1873 |
+
Q
|
1874 |
+
Q
|
1875 |
+
q
|
1876 |
+
1 0 0 1 62.69291 724.3701 cm
|
1877 |
+
Q
|
1878 |
+
q
|
1879 |
+
1 0 0 1 62.69291 634.3701 cm
|
1880 |
+
0 0 0 rg
|
1881 |
+
BT /F1 10 Tf 12 TL ET
|
1882 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
1883 |
+
q
|
1884 |
+
1 0 0 1 20 84 cm
|
1885 |
+
Q
|
1886 |
+
q
|
1887 |
+
1 0 0 1 20 57 cm
|
1888 |
+
0 0 0 rg
|
1889 |
+
BT /F1 10 Tf 12 TL ET
|
1890 |
+
q
|
1891 |
+
1 0 0 1 6 15 cm
|
1892 |
+
q
|
1893 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
1894 |
+
Q
|
1895 |
+
Q
|
1896 |
+
q
|
1897 |
+
1 0 0 1 91.03937 3 cm
|
1898 |
+
q
|
1899 |
+
0 0 0 rg
|
1900 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 2.493799 Tw (Das Expercash-Scoring-Modul ist installiert und konfiguriert und ich befinde) Tj T* 0 Tw (mich im Checkout) Tj T* ET
|
1901 |
+
Q
|
1902 |
+
Q
|
1903 |
+
q
|
1904 |
+
Q
|
1905 |
+
Q
|
1906 |
+
q
|
1907 |
+
1 0 0 1 20 42 cm
|
1908 |
+
0 0 0 rg
|
1909 |
+
BT /F1 10 Tf 12 TL ET
|
1910 |
+
q
|
1911 |
+
1 0 0 1 6 3 cm
|
1912 |
+
q
|
1913 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
1914 |
+
Q
|
1915 |
+
Q
|
1916 |
+
q
|
1917 |
+
1 0 0 1 91.03937 3 cm
|
1918 |
+
q
|
1919 |
+
0 0 0 rg
|
1920 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (den Schritt "Rechnungsadresse" \366ffne) Tj T* ET
|
1921 |
+
Q
|
1922 |
+
Q
|
1923 |
+
q
|
1924 |
+
Q
|
1925 |
+
Q
|
1926 |
+
q
|
1927 |
+
1 0 0 1 20 27 cm
|
1928 |
+
0 0 0 rg
|
1929 |
+
BT /F1 10 Tf 12 TL ET
|
1930 |
+
q
|
1931 |
+
1 0 0 1 6 3 cm
|
1932 |
+
q
|
1933 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
1934 |
+
Q
|
1935 |
+
Q
|
1936 |
+
q
|
1937 |
+
1 0 0 1 91.03937 3 cm
|
1938 |
+
q
|
1939 |
+
0 0 0 rg
|
1940 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
1941 |
+
Q
|
1942 |
+
Q
|
1943 |
+
q
|
1944 |
+
Q
|
1945 |
+
Q
|
1946 |
+
q
|
1947 |
+
1 0 0 1 20 0 cm
|
1948 |
+
0 0 0 rg
|
1949 |
+
BT /F1 10 Tf 12 TL ET
|
1950 |
+
q
|
1951 |
+
1 0 0 1 6 15 cm
|
1952 |
+
q
|
1953 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
1954 |
+
Q
|
1955 |
+
Q
|
1956 |
+
q
|
1957 |
+
1 0 0 1 91.03937 3 cm
|
1958 |
+
q
|
1959 |
+
0 0 0 rg
|
1960 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 4.840039 Tw (sehe ich vor dem "Weiter" Button eine Checkbox zum Best\344tigen der) Tj T* 0 Tw (Durchf\374hrung der Bonit\344tspr\374fung) Tj T* ET
|
1961 |
+
Q
|
1962 |
+
Q
|
1963 |
+
q
|
1964 |
+
Q
|
1965 |
+
Q
|
1966 |
+
q
|
1967 |
+
Q
|
1968 |
+
Q
|
1969 |
+
q
|
1970 |
+
1 0 0 1 62.69291 634.3701 cm
|
1971 |
+
Q
|
1972 |
+
q
|
1973 |
+
1 0 0 1 62.69291 616.3701 cm
|
1974 |
+
q
|
1975 |
+
0 0 0 rg
|
1976 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 2:) Tj T* ET
|
1977 |
+
Q
|
1978 |
+
Q
|
1979 |
+
q
|
1980 |
+
1 0 0 1 62.69291 610.3701 cm
|
1981 |
+
Q
|
1982 |
+
q
|
1983 |
+
1 0 0 1 62.69291 496.3701 cm
|
1984 |
+
0 0 0 rg
|
1985 |
+
BT /F1 10 Tf 12 TL ET
|
1986 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
1987 |
+
q
|
1988 |
+
1 0 0 1 20 108 cm
|
1989 |
+
Q
|
1990 |
+
q
|
1991 |
+
1 0 0 1 20 69 cm
|
1992 |
+
0 0 0 rg
|
1993 |
+
BT /F1 10 Tf 12 TL ET
|
1994 |
+
q
|
1995 |
+
1 0 0 1 6 27 cm
|
1996 |
+
q
|
1997 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
1998 |
+
Q
|
1999 |
+
Q
|
2000 |
+
q
|
2001 |
+
1 0 0 1 91.03937 3 cm
|
2002 |
+
q
|
2003 |
+
0 0 0 rg
|
2004 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 2.493799 Tw (Das Expercash-Scoring-Modul ist installiert und konfiguriert und ich befinde) Tj T* 0 Tw .048933 Tw (mich im Checkout und habe eine deutsche Rechnungsadresse eingegeben und) Tj T* 0 Tw (habe der Durchf\374hrung der Bonit\344tspr\374fung nicht zugestimmt) Tj T* ET
|
2005 |
+
Q
|
2006 |
+
Q
|
2007 |
+
q
|
2008 |
+
Q
|
2009 |
+
Q
|
2010 |
+
q
|
2011 |
+
1 0 0 1 20 54 cm
|
2012 |
+
0 0 0 rg
|
2013 |
+
BT /F1 10 Tf 12 TL ET
|
2014 |
+
q
|
2015 |
+
1 0 0 1 6 3 cm
|
2016 |
+
q
|
2017 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
2018 |
+
Q
|
2019 |
+
Q
|
2020 |
+
q
|
2021 |
+
1 0 0 1 91.03937 3 cm
|
2022 |
+
q
|
2023 |
+
0 0 0 rg
|
2024 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
2025 |
+
Q
|
2026 |
+
Q
|
2027 |
+
q
|
2028 |
+
Q
|
2029 |
+
Q
|
2030 |
+
q
|
2031 |
+
1 0 0 1 20 39 cm
|
2032 |
+
0 0 0 rg
|
2033 |
+
BT /F1 10 Tf 12 TL ET
|
2034 |
+
q
|
2035 |
+
1 0 0 1 6 3 cm
|
2036 |
+
q
|
2037 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
2038 |
+
Q
|
2039 |
+
Q
|
2040 |
+
q
|
2041 |
+
1 0 0 1 91.03937 3 cm
|
2042 |
+
q
|
2043 |
+
0 0 0 rg
|
2044 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
2045 |
+
Q
|
2046 |
+
Q
|
2047 |
+
q
|
2048 |
+
Q
|
2049 |
+
Q
|
2050 |
+
q
|
2051 |
+
1 0 0 1 20 0 cm
|
2052 |
+
0 0 0 rg
|
2053 |
+
BT /F1 10 Tf 12 TL ET
|
2054 |
+
q
|
2055 |
+
1 0 0 1 6 27 cm
|
2056 |
+
q
|
2057 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
2058 |
+
Q
|
2059 |
+
Q
|
2060 |
+
q
|
2061 |
+
1 0 0 1 91.03937 3 cm
|
2062 |
+
q
|
2063 |
+
0 0 0 rg
|
2064 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL .271039 Tw (gelange ich zum n\344chsten Schritt des Checkouts UND in der Zahlartenauswahl) Tj T* 0 Tw 6.720044 Tw (befinden sich nur die Zahlarten, die unabh\344ngig vom Ergebnis der) Tj T* 0 Tw (Bonit\344tspr\374fung angezeigt werden sollen) Tj T* ET
|
2065 |
+
Q
|
2066 |
+
Q
|
2067 |
+
q
|
2068 |
+
Q
|
2069 |
+
Q
|
2070 |
+
q
|
2071 |
+
Q
|
2072 |
+
Q
|
2073 |
+
q
|
2074 |
+
1 0 0 1 62.69291 496.3701 cm
|
2075 |
+
Q
|
2076 |
+
q
|
2077 |
+
1 0 0 1 62.69291 478.3701 cm
|
2078 |
+
q
|
2079 |
+
0 0 0 rg
|
2080 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 3:) Tj T* ET
|
2081 |
+
Q
|
2082 |
+
Q
|
2083 |
+
q
|
2084 |
+
1 0 0 1 62.69291 472.3701 cm
|
2085 |
+
Q
|
2086 |
+
q
|
2087 |
+
1 0 0 1 62.69291 358.3701 cm
|
2088 |
+
0 0 0 rg
|
2089 |
+
BT /F1 10 Tf 12 TL ET
|
2090 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
2091 |
+
q
|
2092 |
+
1 0 0 1 20 108 cm
|
2093 |
+
Q
|
2094 |
+
q
|
2095 |
+
1 0 0 1 20 57 cm
|
2096 |
+
0 0 0 rg
|
2097 |
+
BT /F1 10 Tf 12 TL ET
|
2098 |
+
q
|
2099 |
+
1 0 0 1 6 39 cm
|
2100 |
+
q
|
2101 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
2102 |
+
Q
|
2103 |
+
Q
|
2104 |
+
q
|
2105 |
+
1 0 0 1 91.03937 3 cm
|
2106 |
+
q
|
2107 |
+
0 0 0 rg
|
2108 |
+
BT 1 0 0 1 0 38 Tm /F1 10 Tf 12 TL 2.493799 Tw (Das Expercash-Scoring-Modul ist installiert und konfiguriert und ich befinde) Tj T* 0 Tw .048933 Tw (mich im Checkout und habe eine deutsche Rechnungsadresse eingegeben und) Tj T* 0 Tw 1.308799 Tw (habe der Durchf\374hrung der Bonit\344tspr\374fung zugestimmt oder verwende keine) Tj T* 0 Tw (deutsche Rechnungsadresse) Tj T* ET
|
2109 |
+
Q
|
2110 |
+
Q
|
2111 |
+
q
|
2112 |
+
Q
|
2113 |
+
Q
|
2114 |
+
q
|
2115 |
+
1 0 0 1 20 42 cm
|
2116 |
+
0 0 0 rg
|
2117 |
+
BT /F1 10 Tf 12 TL ET
|
2118 |
+
q
|
2119 |
+
1 0 0 1 6 3 cm
|
2120 |
+
q
|
2121 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
2122 |
+
Q
|
2123 |
+
Q
|
2124 |
+
q
|
2125 |
+
1 0 0 1 91.03937 3 cm
|
2126 |
+
q
|
2127 |
+
0 0 0 rg
|
2128 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
2129 |
+
Q
|
2130 |
+
Q
|
2131 |
+
q
|
2132 |
+
Q
|
2133 |
+
Q
|
2134 |
+
q
|
2135 |
+
1 0 0 1 20 27 cm
|
2136 |
+
0 0 0 rg
|
2137 |
+
BT /F1 10 Tf 12 TL ET
|
2138 |
+
q
|
2139 |
+
1 0 0 1 6 3 cm
|
2140 |
+
q
|
2141 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
2142 |
+
Q
|
2143 |
+
Q
|
2144 |
+
q
|
2145 |
+
1 0 0 1 91.03937 3 cm
|
2146 |
+
q
|
2147 |
+
0 0 0 rg
|
2148 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
2149 |
+
Q
|
2150 |
+
Q
|
2151 |
+
q
|
2152 |
+
Q
|
2153 |
+
Q
|
2154 |
+
q
|
2155 |
+
1 0 0 1 20 0 cm
|
2156 |
+
0 0 0 rg
|
2157 |
+
BT /F1 10 Tf 12 TL ET
|
2158 |
+
q
|
2159 |
+
1 0 0 1 6 15 cm
|
2160 |
+
q
|
2161 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
2162 |
+
Q
|
2163 |
+
Q
|
2164 |
+
q
|
2165 |
+
1 0 0 1 91.03937 3 cm
|
2166 |
+
q
|
2167 |
+
0 0 0 rg
|
2168 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL .500036 Tw (\366ffnet sich der n\344chste Schritt des Checkouts UND im Zahlartenschritt sind die) Tj T* 0 Tw (Zahlarten nach dem Ampelwert gefiltert) Tj T* ET
|
2169 |
+
Q
|
2170 |
+
Q
|
2171 |
+
q
|
2172 |
+
Q
|
2173 |
+
Q
|
2174 |
+
q
|
2175 |
+
Q
|
2176 |
+
Q
|
2177 |
+
q
|
2178 |
+
1 0 0 1 62.69291 358.3701 cm
|
2179 |
+
Q
|
2180 |
+
q
|
2181 |
+
1 0 0 1 62.69291 340.3701 cm
|
2182 |
+
q
|
2183 |
+
0 0 0 rg
|
2184 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 4:) Tj T* ET
|
2185 |
+
Q
|
2186 |
+
Q
|
2187 |
+
q
|
2188 |
+
1 0 0 1 62.69291 334.3701 cm
|
2189 |
+
Q
|
2190 |
+
q
|
2191 |
+
1 0 0 1 62.69291 220.3701 cm
|
2192 |
+
0 0 0 rg
|
2193 |
+
BT /F1 10 Tf 12 TL ET
|
2194 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
2195 |
+
q
|
2196 |
+
1 0 0 1 20 108 cm
|
2197 |
+
Q
|
2198 |
+
q
|
2199 |
+
1 0 0 1 20 45 cm
|
2200 |
+
0 0 0 rg
|
2201 |
+
BT /F1 10 Tf 12 TL ET
|
2202 |
+
q
|
2203 |
+
1 0 0 1 6 51 cm
|
2204 |
+
q
|
2205 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
2206 |
+
Q
|
2207 |
+
Q
|
2208 |
+
q
|
2209 |
+
1 0 0 1 91.03937 3 cm
|
2210 |
+
q
|
2211 |
+
0 0 0 rg
|
2212 |
+
BT 1 0 0 1 0 50 Tm /F1 10 Tf 12 TL 2.493799 Tw (Das Expercash-Scoring-Modul ist installiert und konfiguriert und ich befinde) Tj T* 0 Tw .048933 Tw (mich im Checkout und habe eine deutsche Rechnungsadresse eingegeben und) Tj T* 0 Tw .050044 Tw (habe der Durchf\374hrung der Bonit\344tspr\374fung zugestimmt und habe innerhalb der) Tj T* 0 Tw 2.703377 Tw (letzten X Tage eine Bonit\344tspr\374fung durchgef\374hrt und das Verwenden des) Tj T* 0 Tw (letzten Ergebnisses ist konfiguriert) Tj T* ET
|
2213 |
+
Q
|
2214 |
+
Q
|
2215 |
+
q
|
2216 |
+
Q
|
2217 |
+
Q
|
2218 |
+
q
|
2219 |
+
1 0 0 1 20 30 cm
|
2220 |
+
0 0 0 rg
|
2221 |
+
BT /F1 10 Tf 12 TL ET
|
2222 |
+
q
|
2223 |
+
1 0 0 1 6 3 cm
|
2224 |
+
q
|
2225 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
2226 |
+
Q
|
2227 |
+
Q
|
2228 |
+
q
|
2229 |
+
1 0 0 1 91.03937 3 cm
|
2230 |
+
q
|
2231 |
+
0 0 0 rg
|
2232 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf den Rechnungsadressen-Schritt \366ffne) Tj T* ET
|
2233 |
+
Q
|
2234 |
+
Q
|
2235 |
+
q
|
2236 |
+
Q
|
2237 |
+
Q
|
2238 |
+
q
|
2239 |
+
1 0 0 1 20 15 cm
|
2240 |
+
0 0 0 rg
|
2241 |
+
BT /F1 10 Tf 12 TL ET
|
2242 |
+
q
|
2243 |
+
1 0 0 1 6 3 cm
|
2244 |
+
q
|
2245 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
2246 |
+
Q
|
2247 |
+
Q
|
2248 |
+
q
|
2249 |
+
1 0 0 1 91.03937 3 cm
|
2250 |
+
q
|
2251 |
+
0 0 0 rg
|
2252 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
2253 |
+
Q
|
2254 |
+
Q
|
2255 |
+
q
|
2256 |
+
Q
|
2257 |
+
Q
|
2258 |
+
q
|
2259 |
+
1 0 0 1 20 0 cm
|
2260 |
+
0 0 0 rg
|
2261 |
+
BT /F1 10 Tf 12 TL ET
|
2262 |
+
q
|
2263 |
+
1 0 0 1 6 3 cm
|
2264 |
+
q
|
2265 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
2266 |
+
Q
|
2267 |
+
Q
|
2268 |
+
q
|
2269 |
+
1 0 0 1 91.03937 3 cm
|
2270 |
+
q
|
2271 |
+
0 0 0 rg
|
2272 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (sehe ich keine Checkbox, um die Bonit\344tspr\374fung zu best\344tigen) Tj T* ET
|
2273 |
+
Q
|
2274 |
+
Q
|
2275 |
+
q
|
2276 |
+
Q
|
2277 |
+
Q
|
2278 |
+
q
|
2279 |
+
Q
|
2280 |
+
Q
|
2281 |
+
q
|
2282 |
+
1 0 0 1 62.69291 220.3701 cm
|
2283 |
+
Q
|
2284 |
+
q
|
2285 |
+
1 0 0 1 62.69291 214.3701 cm
|
2286 |
+
Q
|
2287 |
+
q
|
2288 |
+
1 0 0 1 62.69291 214.3701 cm
|
2289 |
+
Q
|
2290 |
+
q
|
2291 |
+
1 0 0 1 62.69291 202.3701 cm
|
2292 |
+
0 0 0 rg
|
2293 |
+
BT /F1 10 Tf 12 TL ET
|
2294 |
+
q
|
2295 |
+
1 0 0 1 6 -3 cm
|
2296 |
+
q
|
2297 |
+
0 0 0 rg
|
2298 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (2.) Tj T* -5.66 0 Td ET
|
2299 |
+
Q
|
2300 |
+
Q
|
2301 |
+
q
|
2302 |
+
1 0 0 1 23 -3 cm
|
2303 |
+
q
|
2304 |
+
0 0 0 rg
|
2305 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Szenario "Durchf\374hren der Abfrage gegen die Schnittstelle") Tj T* ET
|
2306 |
+
Q
|
2307 |
+
Q
|
2308 |
+
q
|
2309 |
+
Q
|
2310 |
+
Q
|
2311 |
+
q
|
2312 |
+
1 0 0 1 62.69291 202.3701 cm
|
2313 |
+
Q
|
2314 |
+
q
|
2315 |
+
1 0 0 1 62.69291 184.3701 cm
|
2316 |
+
q
|
2317 |
+
0 0 0 rg
|
2318 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 1:) Tj T* ET
|
2319 |
+
Q
|
2320 |
+
Q
|
2321 |
+
q
|
2322 |
+
1 0 0 1 62.69291 178.3701 cm
|
2323 |
+
Q
|
2324 |
+
q
|
2325 |
+
1 0 0 1 62.69291 91.37008 cm
|
2326 |
+
0 0 0 rg
|
2327 |
+
BT /F1 10 Tf 12 TL ET
|
2328 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
2329 |
+
q
|
2330 |
+
1 0 0 1 20 81 cm
|
2331 |
+
Q
|
2332 |
+
q
|
2333 |
+
1 0 0 1 20 30 cm
|
2334 |
+
0 0 0 rg
|
2335 |
+
BT /F1 10 Tf 12 TL ET
|
2336 |
+
q
|
2337 |
+
1 0 0 1 6 39 cm
|
2338 |
+
q
|
2339 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
2340 |
+
Q
|
2341 |
+
Q
|
2342 |
+
q
|
2343 |
+
1 0 0 1 91.03937 3 cm
|
2344 |
+
q
|
2345 |
+
0 0 0 rg
|
2346 |
+
BT 1 0 0 1 0 38 Tm /F1 10 Tf 12 TL .800044 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass immer) Tj T* 0 Tw .880039 Tw (eine Bonit\344tspr\374fung durchgef\374hrt wird und ich befinde mich im Checkout und) Tj T* 0 Tw 8.555771 Tw (habe eine deutsche Rechnungsadresse eingegeben und habe der) Tj T* 0 Tw (Durchf\374hrung der Bonit\344tspr\374fung zugestimmt) Tj T* ET
|
2347 |
+
Q
|
2348 |
+
Q
|
2349 |
+
q
|
2350 |
+
Q
|
2351 |
+
Q
|
2352 |
+
q
|
2353 |
+
1 0 0 1 20 15 cm
|
2354 |
+
0 0 0 rg
|
2355 |
+
BT /F1 10 Tf 12 TL ET
|
2356 |
+
q
|
2357 |
+
1 0 0 1 6 3 cm
|
2358 |
+
q
|
2359 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
2360 |
+
Q
|
2361 |
+
Q
|
2362 |
+
q
|
2363 |
+
1 0 0 1 91.03937 3 cm
|
2364 |
+
q
|
2365 |
+
0 0 0 rg
|
2366 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
2367 |
+
Q
|
2368 |
+
Q
|
2369 |
+
q
|
2370 |
+
Q
|
2371 |
+
Q
|
2372 |
+
q
|
2373 |
+
1 0 0 1 20 0 cm
|
2374 |
+
0 0 0 rg
|
2375 |
+
BT /F1 10 Tf 12 TL ET
|
2376 |
+
q
|
2377 |
+
1 0 0 1 6 3 cm
|
2378 |
+
q
|
2379 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
2380 |
+
Q
|
2381 |
+
Q
|
2382 |
+
q
|
2383 |
+
1 0 0 1 91.03937 3 cm
|
2384 |
+
q
|
2385 |
+
0 0 0 rg
|
2386 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
2387 |
+
Q
|
2388 |
+
Q
|
2389 |
+
q
|
2390 |
+
Q
|
2391 |
+
Q
|
2392 |
+
q
|
2393 |
+
Q
|
2394 |
+
Q
|
2395 |
+
|
2396 |
+
endstream
|
2397 |
+
endobj
|
2398 |
+
% 'R31': class PDFStream
|
2399 |
+
31 0 obj
|
2400 |
+
% page stream
|
2401 |
+
<< /Length 9432 >>
|
2402 |
+
stream
|
2403 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
2404 |
+
q
|
2405 |
+
1 0 0 1 62.69291 754.3701 cm
|
2406 |
+
0 0 0 rg
|
2407 |
+
BT /F1 10 Tf 12 TL ET
|
2408 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
2409 |
+
q
|
2410 |
+
1 0 0 1 20 0 cm
|
2411 |
+
0 0 0 rg
|
2412 |
+
BT /F1 10 Tf 12 TL ET
|
2413 |
+
q
|
2414 |
+
1 0 0 1 6 27 cm
|
2415 |
+
q
|
2416 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
2417 |
+
Q
|
2418 |
+
Q
|
2419 |
+
q
|
2420 |
+
1 0 0 1 91.03937 3 cm
|
2421 |
+
q
|
2422 |
+
0 0 0 rg
|
2423 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 4.160039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes die Anfrage zu Expercash) Tj T* 0 Tw 4.133672 Tw (gesendet und das Ergebnis wird in der Session und in der Datenbank) Tj T* 0 Tw (gespeichert) Tj T* ET
|
2424 |
+
Q
|
2425 |
+
Q
|
2426 |
+
q
|
2427 |
+
Q
|
2428 |
+
Q
|
2429 |
+
q
|
2430 |
+
Q
|
2431 |
+
Q
|
2432 |
+
q
|
2433 |
+
1 0 0 1 62.69291 754.3701 cm
|
2434 |
+
Q
|
2435 |
+
q
|
2436 |
+
1 0 0 1 62.69291 736.3701 cm
|
2437 |
+
q
|
2438 |
+
0 0 0 rg
|
2439 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 2:) Tj T* ET
|
2440 |
+
Q
|
2441 |
+
Q
|
2442 |
+
q
|
2443 |
+
1 0 0 1 62.69291 730.3701 cm
|
2444 |
+
Q
|
2445 |
+
q
|
2446 |
+
1 0 0 1 62.69291 604.3701 cm
|
2447 |
+
0 0 0 rg
|
2448 |
+
BT /F1 10 Tf 12 TL ET
|
2449 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
2450 |
+
q
|
2451 |
+
1 0 0 1 20 120 cm
|
2452 |
+
Q
|
2453 |
+
q
|
2454 |
+
1 0 0 1 20 57 cm
|
2455 |
+
0 0 0 rg
|
2456 |
+
BT /F1 10 Tf 12 TL ET
|
2457 |
+
q
|
2458 |
+
1 0 0 1 6 51 cm
|
2459 |
+
q
|
2460 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
2461 |
+
Q
|
2462 |
+
Q
|
2463 |
+
q
|
2464 |
+
1 0 0 1 91.03937 3 cm
|
2465 |
+
q
|
2466 |
+
0 0 0 rg
|
2467 |
+
BT 1 0 0 1 0 50 Tm /F1 10 Tf 12 TL 1.785599 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass eine) Tj T* 0 Tw 4.355771 Tw (Bonit\344tspr\374fung durchgef\374hrt wird sofern ein gewisser Mindestbetrag der) Tj T* 0 Tw 3.478218 Tw (Bestellung erreicht ist und ich befinde mich im Checkout und habe eine) Tj T* 0 Tw 3.714342 Tw (deutsche Rechnungsadresse eingegeben und habe der Durchf\374hrung der) Tj T* 0 Tw (Bonit\344tspr\374fung zugestimmt und der Mindestbetrag ist nicht erreicht) Tj T* ET
|
2468 |
+
Q
|
2469 |
+
Q
|
2470 |
+
q
|
2471 |
+
Q
|
2472 |
+
Q
|
2473 |
+
q
|
2474 |
+
1 0 0 1 20 42 cm
|
2475 |
+
0 0 0 rg
|
2476 |
+
BT /F1 10 Tf 12 TL ET
|
2477 |
+
q
|
2478 |
+
1 0 0 1 6 3 cm
|
2479 |
+
q
|
2480 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
2481 |
+
Q
|
2482 |
+
Q
|
2483 |
+
q
|
2484 |
+
1 0 0 1 91.03937 3 cm
|
2485 |
+
q
|
2486 |
+
0 0 0 rg
|
2487 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
2488 |
+
Q
|
2489 |
+
Q
|
2490 |
+
q
|
2491 |
+
Q
|
2492 |
+
Q
|
2493 |
+
q
|
2494 |
+
1 0 0 1 20 27 cm
|
2495 |
+
0 0 0 rg
|
2496 |
+
BT /F1 10 Tf 12 TL ET
|
2497 |
+
q
|
2498 |
+
1 0 0 1 6 3 cm
|
2499 |
+
q
|
2500 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
2501 |
+
Q
|
2502 |
+
Q
|
2503 |
+
q
|
2504 |
+
1 0 0 1 91.03937 3 cm
|
2505 |
+
q
|
2506 |
+
0 0 0 rg
|
2507 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
2508 |
+
Q
|
2509 |
+
Q
|
2510 |
+
q
|
2511 |
+
Q
|
2512 |
+
Q
|
2513 |
+
q
|
2514 |
+
1 0 0 1 20 0 cm
|
2515 |
+
0 0 0 rg
|
2516 |
+
BT /F1 10 Tf 12 TL ET
|
2517 |
+
q
|
2518 |
+
1 0 0 1 6 15 cm
|
2519 |
+
q
|
2520 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
2521 |
+
Q
|
2522 |
+
Q
|
2523 |
+
q
|
2524 |
+
1 0 0 1 91.03937 3 cm
|
2525 |
+
q
|
2526 |
+
0 0 0 rg
|
2527 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 3.104039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes keine Anfrage zu Expercash) Tj T* 0 Tw (gesendet) Tj T* ET
|
2528 |
+
Q
|
2529 |
+
Q
|
2530 |
+
q
|
2531 |
+
Q
|
2532 |
+
Q
|
2533 |
+
q
|
2534 |
+
Q
|
2535 |
+
Q
|
2536 |
+
q
|
2537 |
+
1 0 0 1 62.69291 604.3701 cm
|
2538 |
+
Q
|
2539 |
+
q
|
2540 |
+
1 0 0 1 62.69291 586.3701 cm
|
2541 |
+
q
|
2542 |
+
0 0 0 rg
|
2543 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 3:) Tj T* ET
|
2544 |
+
Q
|
2545 |
+
Q
|
2546 |
+
q
|
2547 |
+
1 0 0 1 62.69291 580.3701 cm
|
2548 |
+
Q
|
2549 |
+
q
|
2550 |
+
1 0 0 1 62.69291 430.3701 cm
|
2551 |
+
0 0 0 rg
|
2552 |
+
BT /F1 10 Tf 12 TL ET
|
2553 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
2554 |
+
q
|
2555 |
+
1 0 0 1 20 144 cm
|
2556 |
+
Q
|
2557 |
+
q
|
2558 |
+
1 0 0 1 20 69 cm
|
2559 |
+
0 0 0 rg
|
2560 |
+
BT /F1 10 Tf 12 TL ET
|
2561 |
+
q
|
2562 |
+
1 0 0 1 6 63 cm
|
2563 |
+
q
|
2564 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
2565 |
+
Q
|
2566 |
+
Q
|
2567 |
+
q
|
2568 |
+
1 0 0 1 91.03937 3 cm
|
2569 |
+
q
|
2570 |
+
0 0 0 rg
|
2571 |
+
BT 1 0 0 1 0 62 Tm /F1 10 Tf 12 TL 1.785599 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass eine) Tj T* 0 Tw 4.355771 Tw (Bonit\344tspr\374fung durchgef\374hrt wird sofern ein gewisser Mindestbetrag der) Tj T* 0 Tw .880039 Tw (Bestellung erreicht ist und es greifen keine weiteren Einschr\344nkungen und ich) Tj T* 0 Tw 4.920049 Tw (befinde mich im Checkout und habe eine deutsche Rechnungsadresse) Tj T* 0 Tw 1.513799 Tw (eingegeben und habe der Durchf\374hrung der Bonit\344tspr\374fung zugestimmt und) Tj T* 0 Tw (der Mindestbetrag ist erreicht) Tj T* ET
|
2572 |
+
Q
|
2573 |
+
Q
|
2574 |
+
q
|
2575 |
+
Q
|
2576 |
+
Q
|
2577 |
+
q
|
2578 |
+
1 0 0 1 20 54 cm
|
2579 |
+
0 0 0 rg
|
2580 |
+
BT /F1 10 Tf 12 TL ET
|
2581 |
+
q
|
2582 |
+
1 0 0 1 6 3 cm
|
2583 |
+
q
|
2584 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
2585 |
+
Q
|
2586 |
+
Q
|
2587 |
+
q
|
2588 |
+
1 0 0 1 91.03937 3 cm
|
2589 |
+
q
|
2590 |
+
0 0 0 rg
|
2591 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
2592 |
+
Q
|
2593 |
+
Q
|
2594 |
+
q
|
2595 |
+
Q
|
2596 |
+
Q
|
2597 |
+
q
|
2598 |
+
1 0 0 1 20 39 cm
|
2599 |
+
0 0 0 rg
|
2600 |
+
BT /F1 10 Tf 12 TL ET
|
2601 |
+
q
|
2602 |
+
1 0 0 1 6 3 cm
|
2603 |
+
q
|
2604 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
2605 |
+
Q
|
2606 |
+
Q
|
2607 |
+
q
|
2608 |
+
1 0 0 1 91.03937 3 cm
|
2609 |
+
q
|
2610 |
+
0 0 0 rg
|
2611 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
2612 |
+
Q
|
2613 |
+
Q
|
2614 |
+
q
|
2615 |
+
Q
|
2616 |
+
Q
|
2617 |
+
q
|
2618 |
+
1 0 0 1 20 0 cm
|
2619 |
+
0 0 0 rg
|
2620 |
+
BT /F1 10 Tf 12 TL ET
|
2621 |
+
q
|
2622 |
+
1 0 0 1 6 27 cm
|
2623 |
+
q
|
2624 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
2625 |
+
Q
|
2626 |
+
Q
|
2627 |
+
q
|
2628 |
+
1 0 0 1 91.03937 3 cm
|
2629 |
+
q
|
2630 |
+
0 0 0 rg
|
2631 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 3.604039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes eine Anfrage zu Expercash) Tj T* 0 Tw 4.133672 Tw (gesendet und das Ergebnis wird in der Session und in der Datenbank) Tj T* 0 Tw (gespeichert) Tj T* ET
|
2632 |
+
Q
|
2633 |
+
Q
|
2634 |
+
q
|
2635 |
+
Q
|
2636 |
+
Q
|
2637 |
+
q
|
2638 |
+
Q
|
2639 |
+
Q
|
2640 |
+
q
|
2641 |
+
1 0 0 1 62.69291 430.3701 cm
|
2642 |
+
Q
|
2643 |
+
q
|
2644 |
+
1 0 0 1 62.69291 412.3701 cm
|
2645 |
+
q
|
2646 |
+
0 0 0 rg
|
2647 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 4:) Tj T* ET
|
2648 |
+
Q
|
2649 |
+
Q
|
2650 |
+
q
|
2651 |
+
1 0 0 1 62.69291 406.3701 cm
|
2652 |
+
Q
|
2653 |
+
q
|
2654 |
+
1 0 0 1 62.69291 280.3701 cm
|
2655 |
+
0 0 0 rg
|
2656 |
+
BT /F1 10 Tf 12 TL ET
|
2657 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
2658 |
+
q
|
2659 |
+
1 0 0 1 20 120 cm
|
2660 |
+
Q
|
2661 |
+
q
|
2662 |
+
1 0 0 1 20 57 cm
|
2663 |
+
0 0 0 rg
|
2664 |
+
BT /F1 10 Tf 12 TL ET
|
2665 |
+
q
|
2666 |
+
1 0 0 1 6 51 cm
|
2667 |
+
q
|
2668 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
2669 |
+
Q
|
2670 |
+
Q
|
2671 |
+
q
|
2672 |
+
1 0 0 1 91.03937 3 cm
|
2673 |
+
q
|
2674 |
+
0 0 0 rg
|
2675 |
+
BT 1 0 0 1 0 50 Tm /F1 10 Tf 12 TL 1.230044 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass keine) Tj T* 0 Tw 5.893799 Tw (Bonit\344tspr\374fung durchgef\374hrt wird wenn der Kunde in einer gewissen) Tj T* 0 Tw 1.100945 Tw (Kundengruppe ist und ich befinde mich im Checkout und habe eine deutsche) Tj T* 0 Tw 11.56007 Tw (Rechnungsadresse eingegeben und habe der Durchf\374hrung der) Tj T* 0 Tw (Bonit\344tspr\374fung zugestimmt und der Kunde ist in der Kundengruppe) Tj T* ET
|
2676 |
+
Q
|
2677 |
+
Q
|
2678 |
+
q
|
2679 |
+
Q
|
2680 |
+
Q
|
2681 |
+
q
|
2682 |
+
1 0 0 1 20 42 cm
|
2683 |
+
0 0 0 rg
|
2684 |
+
BT /F1 10 Tf 12 TL ET
|
2685 |
+
q
|
2686 |
+
1 0 0 1 6 3 cm
|
2687 |
+
q
|
2688 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
2689 |
+
Q
|
2690 |
+
Q
|
2691 |
+
q
|
2692 |
+
1 0 0 1 91.03937 3 cm
|
2693 |
+
q
|
2694 |
+
0 0 0 rg
|
2695 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
2696 |
+
Q
|
2697 |
+
Q
|
2698 |
+
q
|
2699 |
+
Q
|
2700 |
+
Q
|
2701 |
+
q
|
2702 |
+
1 0 0 1 20 27 cm
|
2703 |
+
0 0 0 rg
|
2704 |
+
BT /F1 10 Tf 12 TL ET
|
2705 |
+
q
|
2706 |
+
1 0 0 1 6 3 cm
|
2707 |
+
q
|
2708 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
2709 |
+
Q
|
2710 |
+
Q
|
2711 |
+
q
|
2712 |
+
1 0 0 1 91.03937 3 cm
|
2713 |
+
q
|
2714 |
+
0 0 0 rg
|
2715 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
2716 |
+
Q
|
2717 |
+
Q
|
2718 |
+
q
|
2719 |
+
Q
|
2720 |
+
Q
|
2721 |
+
q
|
2722 |
+
1 0 0 1 20 0 cm
|
2723 |
+
0 0 0 rg
|
2724 |
+
BT /F1 10 Tf 12 TL ET
|
2725 |
+
q
|
2726 |
+
1 0 0 1 6 15 cm
|
2727 |
+
q
|
2728 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
2729 |
+
Q
|
2730 |
+
Q
|
2731 |
+
q
|
2732 |
+
1 0 0 1 91.03937 3 cm
|
2733 |
+
q
|
2734 |
+
0 0 0 rg
|
2735 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 3.104039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes keine Anfrage zu Expercash) Tj T* 0 Tw (gesendet) Tj T* ET
|
2736 |
+
Q
|
2737 |
+
Q
|
2738 |
+
q
|
2739 |
+
Q
|
2740 |
+
Q
|
2741 |
+
q
|
2742 |
+
Q
|
2743 |
+
Q
|
2744 |
+
q
|
2745 |
+
1 0 0 1 62.69291 280.3701 cm
|
2746 |
+
Q
|
2747 |
+
q
|
2748 |
+
1 0 0 1 62.69291 262.3701 cm
|
2749 |
+
q
|
2750 |
+
0 0 0 rg
|
2751 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 5:) Tj T* ET
|
2752 |
+
Q
|
2753 |
+
Q
|
2754 |
+
q
|
2755 |
+
1 0 0 1 62.69291 256.3701 cm
|
2756 |
+
Q
|
2757 |
+
q
|
2758 |
+
1 0 0 1 62.69291 106.3701 cm
|
2759 |
+
0 0 0 rg
|
2760 |
+
BT /F1 10 Tf 12 TL ET
|
2761 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
2762 |
+
q
|
2763 |
+
1 0 0 1 20 144 cm
|
2764 |
+
Q
|
2765 |
+
q
|
2766 |
+
1 0 0 1 20 69 cm
|
2767 |
+
0 0 0 rg
|
2768 |
+
BT /F1 10 Tf 12 TL ET
|
2769 |
+
q
|
2770 |
+
1 0 0 1 6 63 cm
|
2771 |
+
q
|
2772 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
2773 |
+
Q
|
2774 |
+
Q
|
2775 |
+
q
|
2776 |
+
1 0 0 1 91.03937 3 cm
|
2777 |
+
q
|
2778 |
+
0 0 0 rg
|
2779 |
+
BT 1 0 0 1 0 62 Tm /F1 10 Tf 12 TL 1.230044 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass keine) Tj T* 0 Tw 5.893799 Tw (Bonit\344tspr\374fung durchgef\374hrt wird wenn der Kunde in einer gewissen) Tj T* 0 Tw 2.890044 Tw (Kundengruppe ist und es greifen keine weiteren Einschr\344nkungen und ich) Tj T* 0 Tw 4.920049 Tw (befinde mich im Checkout und habe eine deutsche Rechnungsadresse) Tj T* 0 Tw 1.513799 Tw (eingegeben und habe der Durchf\374hrung der Bonit\344tspr\374fung zugestimmt und) Tj T* 0 Tw (der Kunde ist nicht in der Kundengruppe) Tj T* ET
|
2780 |
+
Q
|
2781 |
+
Q
|
2782 |
+
q
|
2783 |
+
Q
|
2784 |
+
Q
|
2785 |
+
q
|
2786 |
+
1 0 0 1 20 54 cm
|
2787 |
+
0 0 0 rg
|
2788 |
+
BT /F1 10 Tf 12 TL ET
|
2789 |
+
q
|
2790 |
+
1 0 0 1 6 3 cm
|
2791 |
+
q
|
2792 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
2793 |
+
Q
|
2794 |
+
Q
|
2795 |
+
q
|
2796 |
+
1 0 0 1 91.03937 3 cm
|
2797 |
+
q
|
2798 |
+
0 0 0 rg
|
2799 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
2800 |
+
Q
|
2801 |
+
Q
|
2802 |
+
q
|
2803 |
+
Q
|
2804 |
+
Q
|
2805 |
+
q
|
2806 |
+
1 0 0 1 20 39 cm
|
2807 |
+
0 0 0 rg
|
2808 |
+
BT /F1 10 Tf 12 TL ET
|
2809 |
+
q
|
2810 |
+
1 0 0 1 6 3 cm
|
2811 |
+
q
|
2812 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
2813 |
+
Q
|
2814 |
+
Q
|
2815 |
+
q
|
2816 |
+
1 0 0 1 91.03937 3 cm
|
2817 |
+
q
|
2818 |
+
0 0 0 rg
|
2819 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
2820 |
+
Q
|
2821 |
+
Q
|
2822 |
+
q
|
2823 |
+
Q
|
2824 |
+
Q
|
2825 |
+
q
|
2826 |
+
1 0 0 1 20 0 cm
|
2827 |
+
0 0 0 rg
|
2828 |
+
BT /F1 10 Tf 12 TL ET
|
2829 |
+
q
|
2830 |
+
1 0 0 1 6 27 cm
|
2831 |
+
q
|
2832 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
2833 |
+
Q
|
2834 |
+
Q
|
2835 |
+
q
|
2836 |
+
1 0 0 1 91.03937 3 cm
|
2837 |
+
q
|
2838 |
+
0 0 0 rg
|
2839 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 3.604039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes eine Anfrage zu Expercash) Tj T* 0 Tw 4.133672 Tw (gesendet und das Ergebnis wird in der Session und in der Datenbank) Tj T* 0 Tw (gespeichert) Tj T* ET
|
2840 |
+
Q
|
2841 |
+
Q
|
2842 |
+
q
|
2843 |
+
Q
|
2844 |
+
Q
|
2845 |
+
q
|
2846 |
+
Q
|
2847 |
+
Q
|
2848 |
+
q
|
2849 |
+
1 0 0 1 62.69291 106.3701 cm
|
2850 |
+
Q
|
2851 |
+
q
|
2852 |
+
1 0 0 1 62.69291 88.37008 cm
|
2853 |
+
q
|
2854 |
+
0 0 0 rg
|
2855 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 6:) Tj T* ET
|
2856 |
+
Q
|
2857 |
+
Q
|
2858 |
+
q
|
2859 |
+
1 0 0 1 62.69291 82.37008 cm
|
2860 |
+
Q
|
2861 |
+
|
2862 |
+
endstream
|
2863 |
+
endobj
|
2864 |
+
% 'R32': class PDFStream
|
2865 |
+
32 0 obj
|
2866 |
+
% page stream
|
2867 |
+
<< /Length 10190 >>
|
2868 |
+
stream
|
2869 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
2870 |
+
q
|
2871 |
+
1 0 0 1 62.69291 721.8661 cm
|
2872 |
+
0 0 0 rg
|
2873 |
+
BT /F1 10 Tf 12 TL ET
|
2874 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
2875 |
+
q
|
2876 |
+
1 0 0 1 20 72 cm
|
2877 |
+
Q
|
2878 |
+
q
|
2879 |
+
1 0 0 1 20 45 cm
|
2880 |
+
0 0 0 rg
|
2881 |
+
BT /F1 10 Tf 12 TL ET
|
2882 |
+
q
|
2883 |
+
1 0 0 1 6 15 cm
|
2884 |
+
q
|
2885 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
2886 |
+
Q
|
2887 |
+
Q
|
2888 |
+
q
|
2889 |
+
1 0 0 1 91.03937 3 cm
|
2890 |
+
q
|
2891 |
+
0 0 0 rg
|
2892 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 1.823039 Tw (Es wurde eine Abfrage an die Expercash-Schnittstelle gesendet und es gab) Tj T* 0 Tw (kein verwertbares Ergebnis) Tj T* ET
|
2893 |
+
Q
|
2894 |
+
Q
|
2895 |
+
q
|
2896 |
+
Q
|
2897 |
+
Q
|
2898 |
+
q
|
2899 |
+
1 0 0 1 20 30 cm
|
2900 |
+
0 0 0 rg
|
2901 |
+
BT /F1 10 Tf 12 TL ET
|
2902 |
+
q
|
2903 |
+
1 0 0 1 6 3 cm
|
2904 |
+
q
|
2905 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
2906 |
+
Q
|
2907 |
+
Q
|
2908 |
+
q
|
2909 |
+
1 0 0 1 91.03937 3 cm
|
2910 |
+
q
|
2911 |
+
0 0 0 rg
|
2912 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (im Backend den Kunden \366ffne und dann die Bonit\344tsdaten einsehe) Tj T* ET
|
2913 |
+
Q
|
2914 |
+
Q
|
2915 |
+
q
|
2916 |
+
Q
|
2917 |
+
Q
|
2918 |
+
q
|
2919 |
+
1 0 0 1 20 15 cm
|
2920 |
+
0 0 0 rg
|
2921 |
+
BT /F1 10 Tf 12 TL ET
|
2922 |
+
q
|
2923 |
+
1 0 0 1 6 3 cm
|
2924 |
+
q
|
2925 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
2926 |
+
Q
|
2927 |
+
Q
|
2928 |
+
q
|
2929 |
+
1 0 0 1 91.03937 3 cm
|
2930 |
+
q
|
2931 |
+
0 0 0 rg
|
2932 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
2933 |
+
Q
|
2934 |
+
Q
|
2935 |
+
q
|
2936 |
+
Q
|
2937 |
+
Q
|
2938 |
+
q
|
2939 |
+
1 0 0 1 20 0 cm
|
2940 |
+
0 0 0 rg
|
2941 |
+
BT /F1 10 Tf 12 TL ET
|
2942 |
+
q
|
2943 |
+
1 0 0 1 6 3 cm
|
2944 |
+
q
|
2945 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
2946 |
+
Q
|
2947 |
+
Q
|
2948 |
+
q
|
2949 |
+
1 0 0 1 91.03937 3 cm
|
2950 |
+
q
|
2951 |
+
0 0 0 rg
|
2952 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (sehe keinen Eintrag im Datengrid) Tj T* ET
|
2953 |
+
Q
|
2954 |
+
Q
|
2955 |
+
q
|
2956 |
+
Q
|
2957 |
+
Q
|
2958 |
+
q
|
2959 |
+
Q
|
2960 |
+
Q
|
2961 |
+
q
|
2962 |
+
1 0 0 1 62.69291 721.8661 cm
|
2963 |
+
Q
|
2964 |
+
q
|
2965 |
+
1 0 0 1 62.69291 703.8661 cm
|
2966 |
+
q
|
2967 |
+
0 0 0 rg
|
2968 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 7:) Tj T* ET
|
2969 |
+
Q
|
2970 |
+
Q
|
2971 |
+
q
|
2972 |
+
1 0 0 1 62.69291 697.8661 cm
|
2973 |
+
Q
|
2974 |
+
q
|
2975 |
+
1 0 0 1 62.69291 619.8661 cm
|
2976 |
+
0 0 0 rg
|
2977 |
+
BT /F1 10 Tf 12 TL ET
|
2978 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
2979 |
+
q
|
2980 |
+
1 0 0 1 20 72 cm
|
2981 |
+
Q
|
2982 |
+
q
|
2983 |
+
1 0 0 1 20 45 cm
|
2984 |
+
0 0 0 rg
|
2985 |
+
BT /F1 10 Tf 12 TL ET
|
2986 |
+
q
|
2987 |
+
1 0 0 1 6 15 cm
|
2988 |
+
q
|
2989 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
2990 |
+
Q
|
2991 |
+
Q
|
2992 |
+
q
|
2993 |
+
1 0 0 1 91.03937 3 cm
|
2994 |
+
q
|
2995 |
+
0 0 0 rg
|
2996 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL .191854 Tw (Es wurde eine Abfrage an die Expercash-Schnittstelle gesendet und es gab ein) Tj T* 0 Tw (verwertbares Ergebnis) Tj T* ET
|
2997 |
+
Q
|
2998 |
+
Q
|
2999 |
+
q
|
3000 |
+
Q
|
3001 |
+
Q
|
3002 |
+
q
|
3003 |
+
1 0 0 1 20 30 cm
|
3004 |
+
0 0 0 rg
|
3005 |
+
BT /F1 10 Tf 12 TL ET
|
3006 |
+
q
|
3007 |
+
1 0 0 1 6 3 cm
|
3008 |
+
q
|
3009 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
3010 |
+
Q
|
3011 |
+
Q
|
3012 |
+
q
|
3013 |
+
1 0 0 1 91.03937 3 cm
|
3014 |
+
q
|
3015 |
+
0 0 0 rg
|
3016 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (im Backend den Kunden \366ffne und dann die Bonit\344tsdaten einsehe) Tj T* ET
|
3017 |
+
Q
|
3018 |
+
Q
|
3019 |
+
q
|
3020 |
+
Q
|
3021 |
+
Q
|
3022 |
+
q
|
3023 |
+
1 0 0 1 20 15 cm
|
3024 |
+
0 0 0 rg
|
3025 |
+
BT /F1 10 Tf 12 TL ET
|
3026 |
+
q
|
3027 |
+
1 0 0 1 6 3 cm
|
3028 |
+
q
|
3029 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
3030 |
+
Q
|
3031 |
+
Q
|
3032 |
+
q
|
3033 |
+
1 0 0 1 91.03937 3 cm
|
3034 |
+
q
|
3035 |
+
0 0 0 rg
|
3036 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
3037 |
+
Q
|
3038 |
+
Q
|
3039 |
+
q
|
3040 |
+
Q
|
3041 |
+
Q
|
3042 |
+
q
|
3043 |
+
1 0 0 1 20 0 cm
|
3044 |
+
0 0 0 rg
|
3045 |
+
BT /F1 10 Tf 12 TL ET
|
3046 |
+
q
|
3047 |
+
1 0 0 1 6 3 cm
|
3048 |
+
q
|
3049 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
3050 |
+
Q
|
3051 |
+
Q
|
3052 |
+
q
|
3053 |
+
1 0 0 1 91.03937 3 cm
|
3054 |
+
q
|
3055 |
+
0 0 0 rg
|
3056 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (sehe ich den konfigurierten zur\374ckgelieferten Ampelwert) Tj T* ET
|
3057 |
+
Q
|
3058 |
+
Q
|
3059 |
+
q
|
3060 |
+
Q
|
3061 |
+
Q
|
3062 |
+
q
|
3063 |
+
Q
|
3064 |
+
Q
|
3065 |
+
q
|
3066 |
+
1 0 0 1 62.69291 619.8661 cm
|
3067 |
+
Q
|
3068 |
+
q
|
3069 |
+
1 0 0 1 62.69291 601.8661 cm
|
3070 |
+
q
|
3071 |
+
0 0 0 rg
|
3072 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 8:) Tj T* ET
|
3073 |
+
Q
|
3074 |
+
Q
|
3075 |
+
q
|
3076 |
+
1 0 0 1 62.69291 595.8661 cm
|
3077 |
+
Q
|
3078 |
+
q
|
3079 |
+
1 0 0 1 62.69291 433.8661 cm
|
3080 |
+
0 0 0 rg
|
3081 |
+
BT /F1 10 Tf 12 TL ET
|
3082 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
3083 |
+
q
|
3084 |
+
1 0 0 1 20 156 cm
|
3085 |
+
Q
|
3086 |
+
q
|
3087 |
+
1 0 0 1 20 81 cm
|
3088 |
+
0 0 0 rg
|
3089 |
+
BT /F1 10 Tf 12 TL ET
|
3090 |
+
q
|
3091 |
+
1 0 0 1 6 63 cm
|
3092 |
+
q
|
3093 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
3094 |
+
Q
|
3095 |
+
Q
|
3096 |
+
q
|
3097 |
+
1 0 0 1 91.03937 3 cm
|
3098 |
+
q
|
3099 |
+
0 0 0 rg
|
3100 |
+
BT 1 0 0 1 0 62 Tm /F1 10 Tf 12 TL 2.280044 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass nur) Tj T* 0 Tw 3.262266 Tw (eine gewisse Anzahl Bonitatspr\374fungen per Session zul\344ssig sind und es) Tj T* 0 Tw .269039 Tw (greifen keine weiteren Einschr\344nkungen und ich befinde mich im Checkout und) Tj T* 0 Tw 8.555771 Tw (habe eine deutsche Rechnungsadresse eingegeben und habe der) Tj T* 0 Tw 2.212549 Tw (Durchf\374hrung der Bonit\344tspr\374fung zugestimmt und die zul\344ssige Anzahl der) Tj T* 0 Tw (Pr\374fungen pro Session ist noch nicht erreicht) Tj T* ET
|
3101 |
+
Q
|
3102 |
+
Q
|
3103 |
+
q
|
3104 |
+
Q
|
3105 |
+
Q
|
3106 |
+
q
|
3107 |
+
1 0 0 1 20 66 cm
|
3108 |
+
0 0 0 rg
|
3109 |
+
BT /F1 10 Tf 12 TL ET
|
3110 |
+
q
|
3111 |
+
1 0 0 1 6 3 cm
|
3112 |
+
q
|
3113 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
3114 |
+
Q
|
3115 |
+
Q
|
3116 |
+
q
|
3117 |
+
1 0 0 1 91.03937 3 cm
|
3118 |
+
q
|
3119 |
+
0 0 0 rg
|
3120 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
3121 |
+
Q
|
3122 |
+
Q
|
3123 |
+
q
|
3124 |
+
Q
|
3125 |
+
Q
|
3126 |
+
q
|
3127 |
+
1 0 0 1 20 51 cm
|
3128 |
+
0 0 0 rg
|
3129 |
+
BT /F1 10 Tf 12 TL ET
|
3130 |
+
q
|
3131 |
+
1 0 0 1 6 3 cm
|
3132 |
+
q
|
3133 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
3134 |
+
Q
|
3135 |
+
Q
|
3136 |
+
q
|
3137 |
+
1 0 0 1 91.03937 3 cm
|
3138 |
+
q
|
3139 |
+
0 0 0 rg
|
3140 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
3141 |
+
Q
|
3142 |
+
Q
|
3143 |
+
q
|
3144 |
+
Q
|
3145 |
+
Q
|
3146 |
+
q
|
3147 |
+
1 0 0 1 20 0 cm
|
3148 |
+
0 0 0 rg
|
3149 |
+
BT /F1 10 Tf 12 TL ET
|
3150 |
+
q
|
3151 |
+
1 0 0 1 6 39 cm
|
3152 |
+
q
|
3153 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
3154 |
+
Q
|
3155 |
+
Q
|
3156 |
+
q
|
3157 |
+
1 0 0 1 91.03937 3 cm
|
3158 |
+
q
|
3159 |
+
0 0 0 rg
|
3160 |
+
BT 1 0 0 1 0 38 Tm /F1 10 Tf 12 TL 3.604039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes eine Anfrage zu Expercash) Tj T* 0 Tw 5.24549 Tw (gesendet und das Ergebnis wird in der Session und die Anzahl der) Tj T* 0 Tw 4.381039 Tw (durchgef\374hrten Pr\374fungen pro Session wird um eins erh\366ht und in der) Tj T* 0 Tw (Datenbank gespeichert) Tj T* ET
|
3161 |
+
Q
|
3162 |
+
Q
|
3163 |
+
q
|
3164 |
+
Q
|
3165 |
+
Q
|
3166 |
+
q
|
3167 |
+
Q
|
3168 |
+
Q
|
3169 |
+
q
|
3170 |
+
1 0 0 1 62.69291 433.8661 cm
|
3171 |
+
Q
|
3172 |
+
q
|
3173 |
+
1 0 0 1 62.69291 415.8661 cm
|
3174 |
+
q
|
3175 |
+
0 0 0 rg
|
3176 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 9:) Tj T* ET
|
3177 |
+
Q
|
3178 |
+
Q
|
3179 |
+
q
|
3180 |
+
1 0 0 1 62.69291 409.8661 cm
|
3181 |
+
Q
|
3182 |
+
q
|
3183 |
+
1 0 0 1 62.69291 259.8661 cm
|
3184 |
+
0 0 0 rg
|
3185 |
+
BT /F1 10 Tf 12 TL ET
|
3186 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
3187 |
+
q
|
3188 |
+
1 0 0 1 20 144 cm
|
3189 |
+
Q
|
3190 |
+
q
|
3191 |
+
1 0 0 1 20 69 cm
|
3192 |
+
0 0 0 rg
|
3193 |
+
BT /F1 10 Tf 12 TL ET
|
3194 |
+
q
|
3195 |
+
1 0 0 1 6 63 cm
|
3196 |
+
q
|
3197 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
3198 |
+
Q
|
3199 |
+
Q
|
3200 |
+
q
|
3201 |
+
1 0 0 1 91.03937 3 cm
|
3202 |
+
q
|
3203 |
+
0 0 0 rg
|
3204 |
+
BT 1 0 0 1 0 62 Tm /F1 10 Tf 12 TL 2.280044 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass nur) Tj T* 0 Tw 3.262266 Tw (eine gewisse Anzahl Bonitatspr\374fungen per Session zul\344ssig sind und es) Tj T* 0 Tw .269039 Tw (greifen keine weiteren Einschr\344nkungen und ich befinde mich im Checkout und) Tj T* 0 Tw 8.555771 Tw (habe eine deutsche Rechnungsadresse eingegeben und habe der) Tj T* 0 Tw 2.212549 Tw (Durchf\374hrung der Bonit\344tspr\374fung zugestimmt und die zul\344ssige Anzahl der) Tj T* 0 Tw (Pr\374fungen pro Session ist erreicht) Tj T* ET
|
3205 |
+
Q
|
3206 |
+
Q
|
3207 |
+
q
|
3208 |
+
Q
|
3209 |
+
Q
|
3210 |
+
q
|
3211 |
+
1 0 0 1 20 54 cm
|
3212 |
+
0 0 0 rg
|
3213 |
+
BT /F1 10 Tf 12 TL ET
|
3214 |
+
q
|
3215 |
+
1 0 0 1 6 3 cm
|
3216 |
+
q
|
3217 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
3218 |
+
Q
|
3219 |
+
Q
|
3220 |
+
q
|
3221 |
+
1 0 0 1 91.03937 3 cm
|
3222 |
+
q
|
3223 |
+
0 0 0 rg
|
3224 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
3225 |
+
Q
|
3226 |
+
Q
|
3227 |
+
q
|
3228 |
+
Q
|
3229 |
+
Q
|
3230 |
+
q
|
3231 |
+
1 0 0 1 20 39 cm
|
3232 |
+
0 0 0 rg
|
3233 |
+
BT /F1 10 Tf 12 TL ET
|
3234 |
+
q
|
3235 |
+
1 0 0 1 6 3 cm
|
3236 |
+
q
|
3237 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
3238 |
+
Q
|
3239 |
+
Q
|
3240 |
+
q
|
3241 |
+
1 0 0 1 91.03937 3 cm
|
3242 |
+
q
|
3243 |
+
0 0 0 rg
|
3244 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
3245 |
+
Q
|
3246 |
+
Q
|
3247 |
+
q
|
3248 |
+
Q
|
3249 |
+
Q
|
3250 |
+
q
|
3251 |
+
1 0 0 1 20 0 cm
|
3252 |
+
0 0 0 rg
|
3253 |
+
BT /F1 10 Tf 12 TL ET
|
3254 |
+
q
|
3255 |
+
1 0 0 1 6 27 cm
|
3256 |
+
q
|
3257 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
3258 |
+
Q
|
3259 |
+
Q
|
3260 |
+
q
|
3261 |
+
1 0 0 1 91.03937 3 cm
|
3262 |
+
q
|
3263 |
+
0 0 0 rg
|
3264 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 3.104039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes keine Anfrage zu Expercash) Tj T* 0 Tw .491039 Tw (gesendet und der Ampelwert f\374r das \334berschreiten der Pr\374fungen pro Session) Tj T* 0 Tw (wird verwendet) Tj T* ET
|
3265 |
+
Q
|
3266 |
+
Q
|
3267 |
+
q
|
3268 |
+
Q
|
3269 |
+
Q
|
3270 |
+
q
|
3271 |
+
Q
|
3272 |
+
Q
|
3273 |
+
q
|
3274 |
+
1 0 0 1 62.69291 259.8661 cm
|
3275 |
+
Q
|
3276 |
+
q
|
3277 |
+
1 0 0 1 62.69291 241.8661 cm
|
3278 |
+
q
|
3279 |
+
0 0 0 rg
|
3280 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 10:) Tj T* ET
|
3281 |
+
Q
|
3282 |
+
Q
|
3283 |
+
q
|
3284 |
+
1 0 0 1 62.69291 235.8661 cm
|
3285 |
+
Q
|
3286 |
+
q
|
3287 |
+
1 0 0 1 62.69291 85.86614 cm
|
3288 |
+
0 0 0 rg
|
3289 |
+
BT /F1 10 Tf 12 TL ET
|
3290 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
3291 |
+
q
|
3292 |
+
1 0 0 1 20 144 cm
|
3293 |
+
Q
|
3294 |
+
q
|
3295 |
+
1 0 0 1 20 69 cm
|
3296 |
+
0 0 0 rg
|
3297 |
+
BT /F1 10 Tf 12 TL ET
|
3298 |
+
q
|
3299 |
+
1 0 0 1 6 63 cm
|
3300 |
+
q
|
3301 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
3302 |
+
Q
|
3303 |
+
Q
|
3304 |
+
q
|
3305 |
+
1 0 0 1 91.03937 3 cm
|
3306 |
+
q
|
3307 |
+
0 0 0 rg
|
3308 |
+
BT 1 0 0 1 0 62 Tm /F1 10 Tf 12 TL 2.280044 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass nur) Tj T* 0 Tw 1.435039 Tw (eine gewisse Anzahl Bonitatspr\374fungen pro Tag zul\344ssig sind und es greifen) Tj T* 0 Tw 1.102039 Tw (keine weiteren Einschr\344nkungen und ich befinde mich im Checkout und habe) Tj T* 0 Tw .540049 Tw (eine deutsche Rechnungsadresse eingegeben und habe der Durchf\374hrung der) Tj T* 0 Tw 1.347822 Tw (Bonit\344tspr\374fung zugestimmt und die zul\344ssige Anzahl der Pr\374fungen pro Tag) Tj T* 0 Tw (ist noch nicht erreicht) Tj T* ET
|
3309 |
+
Q
|
3310 |
+
Q
|
3311 |
+
q
|
3312 |
+
Q
|
3313 |
+
Q
|
3314 |
+
q
|
3315 |
+
1 0 0 1 20 54 cm
|
3316 |
+
0 0 0 rg
|
3317 |
+
BT /F1 10 Tf 12 TL ET
|
3318 |
+
q
|
3319 |
+
1 0 0 1 6 3 cm
|
3320 |
+
q
|
3321 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
3322 |
+
Q
|
3323 |
+
Q
|
3324 |
+
q
|
3325 |
+
1 0 0 1 91.03937 3 cm
|
3326 |
+
q
|
3327 |
+
0 0 0 rg
|
3328 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
3329 |
+
Q
|
3330 |
+
Q
|
3331 |
+
q
|
3332 |
+
Q
|
3333 |
+
Q
|
3334 |
+
q
|
3335 |
+
1 0 0 1 20 39 cm
|
3336 |
+
0 0 0 rg
|
3337 |
+
BT /F1 10 Tf 12 TL ET
|
3338 |
+
q
|
3339 |
+
1 0 0 1 6 3 cm
|
3340 |
+
q
|
3341 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
3342 |
+
Q
|
3343 |
+
Q
|
3344 |
+
q
|
3345 |
+
1 0 0 1 91.03937 3 cm
|
3346 |
+
q
|
3347 |
+
0 0 0 rg
|
3348 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
3349 |
+
Q
|
3350 |
+
Q
|
3351 |
+
q
|
3352 |
+
Q
|
3353 |
+
Q
|
3354 |
+
q
|
3355 |
+
1 0 0 1 20 0 cm
|
3356 |
+
0 0 0 rg
|
3357 |
+
BT /F1 10 Tf 12 TL ET
|
3358 |
+
q
|
3359 |
+
1 0 0 1 6 27 cm
|
3360 |
+
q
|
3361 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
3362 |
+
Q
|
3363 |
+
Q
|
3364 |
+
q
|
3365 |
+
1 0 0 1 91.03937 3 cm
|
3366 |
+
q
|
3367 |
+
0 0 0 rg
|
3368 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 3.604039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes eine Anfrage zu Expercash) Tj T* 0 Tw 4.133672 Tw (gesendet und das Ergebnis wird in der Session und in der Datenbank) Tj T* 0 Tw (gespeichert) Tj T* ET
|
3369 |
+
Q
|
3370 |
+
Q
|
3371 |
+
q
|
3372 |
+
Q
|
3373 |
+
Q
|
3374 |
+
q
|
3375 |
+
Q
|
3376 |
+
Q
|
3377 |
+
q
|
3378 |
+
1 0 0 1 62.69291 85.86614 cm
|
3379 |
+
Q
|
3380 |
+
|
3381 |
+
endstream
|
3382 |
+
endobj
|
3383 |
+
% 'R33': class PDFStream
|
3384 |
+
33 0 obj
|
3385 |
+
% page stream
|
3386 |
+
<< /Length 9220 >>
|
3387 |
+
stream
|
3388 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
3389 |
+
q
|
3390 |
+
1 0 0 1 62.69291 781.3701 cm
|
3391 |
+
q
|
3392 |
+
0 0 0 rg
|
3393 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 11:) Tj T* ET
|
3394 |
+
Q
|
3395 |
+
Q
|
3396 |
+
q
|
3397 |
+
1 0 0 1 62.69291 775.3701 cm
|
3398 |
+
Q
|
3399 |
+
q
|
3400 |
+
1 0 0 1 62.69291 625.3701 cm
|
3401 |
+
0 0 0 rg
|
3402 |
+
BT /F1 10 Tf 12 TL ET
|
3403 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
3404 |
+
q
|
3405 |
+
1 0 0 1 20 144 cm
|
3406 |
+
Q
|
3407 |
+
q
|
3408 |
+
1 0 0 1 20 69 cm
|
3409 |
+
0 0 0 rg
|
3410 |
+
BT /F1 10 Tf 12 TL ET
|
3411 |
+
q
|
3412 |
+
1 0 0 1 6 63 cm
|
3413 |
+
q
|
3414 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
3415 |
+
Q
|
3416 |
+
Q
|
3417 |
+
q
|
3418 |
+
1 0 0 1 91.03937 3 cm
|
3419 |
+
q
|
3420 |
+
0 0 0 rg
|
3421 |
+
BT 1 0 0 1 0 62 Tm /F1 10 Tf 12 TL 2.280044 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass nur) Tj T* 0 Tw 1.435039 Tw (eine gewisse Anzahl Bonitatspr\374fungen pro Tag zul\344ssig sind und es greifen) Tj T* 0 Tw 1.102039 Tw (keine weiteren Einschr\344nkungen und ich befinde mich im Checkout und habe) Tj T* 0 Tw .540049 Tw (eine deutsche Rechnungsadresse eingegeben und habe der Durchf\374hrung der) Tj T* 0 Tw 1.347822 Tw (Bonit\344tspr\374fung zugestimmt und die zul\344ssige Anzahl der Pr\374fungen pro Tag) Tj T* 0 Tw (ist erreicht) Tj T* ET
|
3422 |
+
Q
|
3423 |
+
Q
|
3424 |
+
q
|
3425 |
+
Q
|
3426 |
+
Q
|
3427 |
+
q
|
3428 |
+
1 0 0 1 20 54 cm
|
3429 |
+
0 0 0 rg
|
3430 |
+
BT /F1 10 Tf 12 TL ET
|
3431 |
+
q
|
3432 |
+
1 0 0 1 6 3 cm
|
3433 |
+
q
|
3434 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
3435 |
+
Q
|
3436 |
+
Q
|
3437 |
+
q
|
3438 |
+
1 0 0 1 91.03937 3 cm
|
3439 |
+
q
|
3440 |
+
0 0 0 rg
|
3441 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
3442 |
+
Q
|
3443 |
+
Q
|
3444 |
+
q
|
3445 |
+
Q
|
3446 |
+
Q
|
3447 |
+
q
|
3448 |
+
1 0 0 1 20 39 cm
|
3449 |
+
0 0 0 rg
|
3450 |
+
BT /F1 10 Tf 12 TL ET
|
3451 |
+
q
|
3452 |
+
1 0 0 1 6 3 cm
|
3453 |
+
q
|
3454 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
3455 |
+
Q
|
3456 |
+
Q
|
3457 |
+
q
|
3458 |
+
1 0 0 1 91.03937 3 cm
|
3459 |
+
q
|
3460 |
+
0 0 0 rg
|
3461 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
3462 |
+
Q
|
3463 |
+
Q
|
3464 |
+
q
|
3465 |
+
Q
|
3466 |
+
Q
|
3467 |
+
q
|
3468 |
+
1 0 0 1 20 0 cm
|
3469 |
+
0 0 0 rg
|
3470 |
+
BT /F1 10 Tf 12 TL ET
|
3471 |
+
q
|
3472 |
+
1 0 0 1 6 27 cm
|
3473 |
+
q
|
3474 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
3475 |
+
Q
|
3476 |
+
Q
|
3477 |
+
q
|
3478 |
+
1 0 0 1 91.03937 3 cm
|
3479 |
+
q
|
3480 |
+
0 0 0 rg
|
3481 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 3.104039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes keine Anfrage zu Expercash) Tj T* 0 Tw .194581 Tw (gesendet und der Ampelwert f\374r das \334berschreiten der Pr\374fungen pro Tag wird) Tj T* 0 Tw (verwendet) Tj T* ET
|
3482 |
+
Q
|
3483 |
+
Q
|
3484 |
+
q
|
3485 |
+
Q
|
3486 |
+
Q
|
3487 |
+
q
|
3488 |
+
Q
|
3489 |
+
Q
|
3490 |
+
q
|
3491 |
+
1 0 0 1 62.69291 625.3701 cm
|
3492 |
+
Q
|
3493 |
+
q
|
3494 |
+
1 0 0 1 62.69291 607.3701 cm
|
3495 |
+
q
|
3496 |
+
0 0 0 rg
|
3497 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 12:) Tj T* ET
|
3498 |
+
Q
|
3499 |
+
Q
|
3500 |
+
q
|
3501 |
+
1 0 0 1 62.69291 601.3701 cm
|
3502 |
+
Q
|
3503 |
+
q
|
3504 |
+
1 0 0 1 62.69291 463.3701 cm
|
3505 |
+
0 0 0 rg
|
3506 |
+
BT /F1 10 Tf 12 TL ET
|
3507 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
3508 |
+
q
|
3509 |
+
1 0 0 1 20 132 cm
|
3510 |
+
Q
|
3511 |
+
q
|
3512 |
+
1 0 0 1 20 69 cm
|
3513 |
+
0 0 0 rg
|
3514 |
+
BT /F1 10 Tf 12 TL ET
|
3515 |
+
q
|
3516 |
+
1 0 0 1 6 51 cm
|
3517 |
+
q
|
3518 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
3519 |
+
Q
|
3520 |
+
Q
|
3521 |
+
q
|
3522 |
+
1 0 0 1 91.03937 3 cm
|
3523 |
+
q
|
3524 |
+
0 0 0 rg
|
3525 |
+
BT 1 0 0 1 0 50 Tm /F1 10 Tf 12 TL 2.094488 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass das) Tj T* 0 Tw 1.520033 Tw (Ergebnis der Bonit\344tspr\374fung nicht f\374r X Tage g\374ltig sein soll und es greifen) Tj T* 0 Tw 1.102039 Tw (keine weiteren Einschr\344nkungen und ich befinde mich im Checkout und habe) Tj T* 0 Tw .540049 Tw (eine deutsche Rechnungsadresse eingegeben und habe der Durchf\374hrung der) Tj T* 0 Tw (Bonit\344tspr\374fung zugestimmt) Tj T* ET
|
3526 |
+
Q
|
3527 |
+
Q
|
3528 |
+
q
|
3529 |
+
Q
|
3530 |
+
Q
|
3531 |
+
q
|
3532 |
+
1 0 0 1 20 54 cm
|
3533 |
+
0 0 0 rg
|
3534 |
+
BT /F1 10 Tf 12 TL ET
|
3535 |
+
q
|
3536 |
+
1 0 0 1 6 3 cm
|
3537 |
+
q
|
3538 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
3539 |
+
Q
|
3540 |
+
Q
|
3541 |
+
q
|
3542 |
+
1 0 0 1 91.03937 3 cm
|
3543 |
+
q
|
3544 |
+
0 0 0 rg
|
3545 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
3546 |
+
Q
|
3547 |
+
Q
|
3548 |
+
q
|
3549 |
+
Q
|
3550 |
+
Q
|
3551 |
+
q
|
3552 |
+
1 0 0 1 20 39 cm
|
3553 |
+
0 0 0 rg
|
3554 |
+
BT /F1 10 Tf 12 TL ET
|
3555 |
+
q
|
3556 |
+
1 0 0 1 6 3 cm
|
3557 |
+
q
|
3558 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
3559 |
+
Q
|
3560 |
+
Q
|
3561 |
+
q
|
3562 |
+
1 0 0 1 91.03937 3 cm
|
3563 |
+
q
|
3564 |
+
0 0 0 rg
|
3565 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
3566 |
+
Q
|
3567 |
+
Q
|
3568 |
+
q
|
3569 |
+
Q
|
3570 |
+
Q
|
3571 |
+
q
|
3572 |
+
1 0 0 1 20 0 cm
|
3573 |
+
0 0 0 rg
|
3574 |
+
BT /F1 10 Tf 12 TL ET
|
3575 |
+
q
|
3576 |
+
1 0 0 1 6 27 cm
|
3577 |
+
q
|
3578 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
3579 |
+
Q
|
3580 |
+
Q
|
3581 |
+
q
|
3582 |
+
1 0 0 1 91.03937 3 cm
|
3583 |
+
q
|
3584 |
+
0 0 0 rg
|
3585 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 3.604039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes eine Anfrage zu Expercash) Tj T* 0 Tw 4.133672 Tw (gesendet und das Ergebnis wird in der Session und in der Datenbank) Tj T* 0 Tw (gespeichert) Tj T* ET
|
3586 |
+
Q
|
3587 |
+
Q
|
3588 |
+
q
|
3589 |
+
Q
|
3590 |
+
Q
|
3591 |
+
q
|
3592 |
+
Q
|
3593 |
+
Q
|
3594 |
+
q
|
3595 |
+
1 0 0 1 62.69291 463.3701 cm
|
3596 |
+
Q
|
3597 |
+
q
|
3598 |
+
1 0 0 1 62.69291 445.3701 cm
|
3599 |
+
q
|
3600 |
+
0 0 0 rg
|
3601 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 13:) Tj T* ET
|
3602 |
+
Q
|
3603 |
+
Q
|
3604 |
+
q
|
3605 |
+
1 0 0 1 62.69291 439.3701 cm
|
3606 |
+
Q
|
3607 |
+
q
|
3608 |
+
1 0 0 1 62.69291 289.3701 cm
|
3609 |
+
0 0 0 rg
|
3610 |
+
BT /F1 10 Tf 12 TL ET
|
3611 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
3612 |
+
q
|
3613 |
+
1 0 0 1 20 144 cm
|
3614 |
+
Q
|
3615 |
+
q
|
3616 |
+
1 0 0 1 20 69 cm
|
3617 |
+
0 0 0 rg
|
3618 |
+
BT /F1 10 Tf 12 TL ET
|
3619 |
+
q
|
3620 |
+
1 0 0 1 6 63 cm
|
3621 |
+
q
|
3622 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
3623 |
+
Q
|
3624 |
+
Q
|
3625 |
+
q
|
3626 |
+
1 0 0 1 91.03937 3 cm
|
3627 |
+
q
|
3628 |
+
0 0 0 rg
|
3629 |
+
BT 1 0 0 1 0 62 Tm /F1 10 Tf 12 TL 2.094488 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass das) Tj T* 0 Tw 2.720036 Tw (Ergebnis der Bonit\344tspr\374fung f\374r X Tage g\374ltig sein soll und es existieren) Tj T* 0 Tw 1.823039 Tw (Ergebnisse der Bonit\344tspr\374fung innerhalb der letzten X Tage und es greifen) Tj T* 0 Tw 1.102039 Tw (keine weiteren Einschr\344nkungen und ich befinde mich im Checkout und habe) Tj T* 0 Tw .540049 Tw (eine deutsche Rechnungsadresse eingegeben und habe der Durchf\374hrung der) Tj T* 0 Tw (Bonit\344tspr\374fung zugestimmt) Tj T* ET
|
3630 |
+
Q
|
3631 |
+
Q
|
3632 |
+
q
|
3633 |
+
Q
|
3634 |
+
Q
|
3635 |
+
q
|
3636 |
+
1 0 0 1 20 54 cm
|
3637 |
+
0 0 0 rg
|
3638 |
+
BT /F1 10 Tf 12 TL ET
|
3639 |
+
q
|
3640 |
+
1 0 0 1 6 3 cm
|
3641 |
+
q
|
3642 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
3643 |
+
Q
|
3644 |
+
Q
|
3645 |
+
q
|
3646 |
+
1 0 0 1 91.03937 3 cm
|
3647 |
+
q
|
3648 |
+
0 0 0 rg
|
3649 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
3650 |
+
Q
|
3651 |
+
Q
|
3652 |
+
q
|
3653 |
+
Q
|
3654 |
+
Q
|
3655 |
+
q
|
3656 |
+
1 0 0 1 20 39 cm
|
3657 |
+
0 0 0 rg
|
3658 |
+
BT /F1 10 Tf 12 TL ET
|
3659 |
+
q
|
3660 |
+
1 0 0 1 6 3 cm
|
3661 |
+
q
|
3662 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
3663 |
+
Q
|
3664 |
+
Q
|
3665 |
+
q
|
3666 |
+
1 0 0 1 91.03937 3 cm
|
3667 |
+
q
|
3668 |
+
0 0 0 rg
|
3669 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
3670 |
+
Q
|
3671 |
+
Q
|
3672 |
+
q
|
3673 |
+
Q
|
3674 |
+
Q
|
3675 |
+
q
|
3676 |
+
1 0 0 1 20 0 cm
|
3677 |
+
0 0 0 rg
|
3678 |
+
BT /F1 10 Tf 12 TL ET
|
3679 |
+
q
|
3680 |
+
1 0 0 1 6 27 cm
|
3681 |
+
q
|
3682 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
3683 |
+
Q
|
3684 |
+
Q
|
3685 |
+
q
|
3686 |
+
1 0 0 1 91.03937 3 cm
|
3687 |
+
q
|
3688 |
+
0 0 0 rg
|
3689 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 3.104039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes keine Anfrage zu Expercash) Tj T* 0 Tw 3.942266 Tw (gesendet und der zuletzt zur\374ckgelieferte Ampelwert der letzten X Tage) Tj T* 0 Tw (verwendet) Tj T* ET
|
3690 |
+
Q
|
3691 |
+
Q
|
3692 |
+
q
|
3693 |
+
Q
|
3694 |
+
Q
|
3695 |
+
q
|
3696 |
+
Q
|
3697 |
+
Q
|
3698 |
+
q
|
3699 |
+
1 0 0 1 62.69291 289.3701 cm
|
3700 |
+
Q
|
3701 |
+
q
|
3702 |
+
1 0 0 1 62.69291 271.3701 cm
|
3703 |
+
q
|
3704 |
+
0 0 0 rg
|
3705 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 14:) Tj T* ET
|
3706 |
+
Q
|
3707 |
+
Q
|
3708 |
+
q
|
3709 |
+
1 0 0 1 62.69291 265.3701 cm
|
3710 |
+
Q
|
3711 |
+
q
|
3712 |
+
1 0 0 1 62.69291 115.3701 cm
|
3713 |
+
0 0 0 rg
|
3714 |
+
BT /F1 10 Tf 12 TL ET
|
3715 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
3716 |
+
q
|
3717 |
+
1 0 0 1 20 144 cm
|
3718 |
+
Q
|
3719 |
+
q
|
3720 |
+
1 0 0 1 20 69 cm
|
3721 |
+
0 0 0 rg
|
3722 |
+
BT /F1 10 Tf 12 TL ET
|
3723 |
+
q
|
3724 |
+
1 0 0 1 6 63 cm
|
3725 |
+
q
|
3726 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
3727 |
+
Q
|
3728 |
+
Q
|
3729 |
+
q
|
3730 |
+
1 0 0 1 91.03937 3 cm
|
3731 |
+
q
|
3732 |
+
0 0 0 rg
|
3733 |
+
BT 1 0 0 1 0 62 Tm /F1 10 Tf 12 TL 2.094488 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass das) Tj T* 0 Tw .270033 Tw (Ergebnis der Bonit\344tspr\374fung f\374r X Tage g\374ltig sein soll und es existieren keine) Tj T* 0 Tw 1.823039 Tw (Ergebnisse der Bonit\344tspr\374fung innerhalb der letzten X Tage und es greifen) Tj T* 0 Tw 1.102039 Tw (keine weiteren Einschr\344nkungen und ich befinde mich im Checkout und habe) Tj T* 0 Tw .540049 Tw (eine deutsche Rechnungsadresse eingegeben und habe der Durchf\374hrung der) Tj T* 0 Tw (Bonit\344tspr\374fung zugestimmt) Tj T* ET
|
3734 |
+
Q
|
3735 |
+
Q
|
3736 |
+
q
|
3737 |
+
Q
|
3738 |
+
Q
|
3739 |
+
q
|
3740 |
+
1 0 0 1 20 54 cm
|
3741 |
+
0 0 0 rg
|
3742 |
+
BT /F1 10 Tf 12 TL ET
|
3743 |
+
q
|
3744 |
+
1 0 0 1 6 3 cm
|
3745 |
+
q
|
3746 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
3747 |
+
Q
|
3748 |
+
Q
|
3749 |
+
q
|
3750 |
+
1 0 0 1 91.03937 3 cm
|
3751 |
+
q
|
3752 |
+
0 0 0 rg
|
3753 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (auf "Weiter" klicke) Tj T* ET
|
3754 |
+
Q
|
3755 |
+
Q
|
3756 |
+
q
|
3757 |
+
Q
|
3758 |
+
Q
|
3759 |
+
q
|
3760 |
+
1 0 0 1 20 39 cm
|
3761 |
+
0 0 0 rg
|
3762 |
+
BT /F1 10 Tf 12 TL ET
|
3763 |
+
q
|
3764 |
+
1 0 0 1 6 3 cm
|
3765 |
+
q
|
3766 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
3767 |
+
Q
|
3768 |
+
Q
|
3769 |
+
q
|
3770 |
+
1 0 0 1 91.03937 3 cm
|
3771 |
+
q
|
3772 |
+
0 0 0 rg
|
3773 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
3774 |
+
Q
|
3775 |
+
Q
|
3776 |
+
q
|
3777 |
+
Q
|
3778 |
+
Q
|
3779 |
+
q
|
3780 |
+
1 0 0 1 20 0 cm
|
3781 |
+
0 0 0 rg
|
3782 |
+
BT /F1 10 Tf 12 TL ET
|
3783 |
+
q
|
3784 |
+
1 0 0 1 6 27 cm
|
3785 |
+
q
|
3786 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
3787 |
+
Q
|
3788 |
+
Q
|
3789 |
+
q
|
3790 |
+
1 0 0 1 91.03937 3 cm
|
3791 |
+
q
|
3792 |
+
0 0 0 rg
|
3793 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 3.604039 Tw (wird vor dem \326ffnen des n\344chsten Schrittes eine Anfrage zu Expercash) Tj T* 0 Tw 4.133672 Tw (gesendet und das Ergebnis wird in der Session und in der Datenbank) Tj T* 0 Tw (gespeichert) Tj T* ET
|
3794 |
+
Q
|
3795 |
+
Q
|
3796 |
+
q
|
3797 |
+
Q
|
3798 |
+
Q
|
3799 |
+
q
|
3800 |
+
Q
|
3801 |
+
Q
|
3802 |
+
q
|
3803 |
+
1 0 0 1 62.69291 115.3701 cm
|
3804 |
+
Q
|
3805 |
+
q
|
3806 |
+
1 0 0 1 62.69291 97.37008 cm
|
3807 |
+
q
|
3808 |
+
0 0 0 rg
|
3809 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 15:) Tj T* ET
|
3810 |
+
Q
|
3811 |
+
Q
|
3812 |
+
q
|
3813 |
+
1 0 0 1 62.69291 91.37008 cm
|
3814 |
+
Q
|
3815 |
+
q
|
3816 |
+
1 0 0 1 287.6378 79.37008 cm
|
3817 |
+
0 0 0 rg
|
3818 |
+
BT /F1 10 Tf 12 TL ET
|
3819 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
3820 |
+
q
|
3821 |
+
1 0 0 1 20 0 cm
|
3822 |
+
Q
|
3823 |
+
q
|
3824 |
+
Q
|
3825 |
+
Q
|
3826 |
+
|
3827 |
+
endstream
|
3828 |
+
endobj
|
3829 |
+
% 'R34': class PDFStream
|
3830 |
+
34 0 obj
|
3831 |
+
% page stream
|
3832 |
+
<< /Length 11455 >>
|
3833 |
+
stream
|
3834 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
3835 |
+
q
|
3836 |
+
1 0 0 1 62.69291 697.3701 cm
|
3837 |
+
0 0 0 rg
|
3838 |
+
BT /F1 10 Tf 12 TL ET
|
3839 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
3840 |
+
q
|
3841 |
+
1 0 0 1 20 45 cm
|
3842 |
+
0 0 0 rg
|
3843 |
+
BT /F1 10 Tf 12 TL ET
|
3844 |
+
q
|
3845 |
+
1 0 0 1 6 39 cm
|
3846 |
+
q
|
3847 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
3848 |
+
Q
|
3849 |
+
Q
|
3850 |
+
q
|
3851 |
+
1 0 0 1 91.03937 3 cm
|
3852 |
+
q
|
3853 |
+
0 0 0 rg
|
3854 |
+
BT 1 0 0 1 0 38 Tm /F1 10 Tf 12 TL .440039 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass das f\374r) Tj T* 0 Tw 3.183799 Tw (die Ampelgruppen gelb oder gr\374n zus\344tzlich noch der Identifikationsstatus) Tj T* 0 Tw .497309 Tw (ber\374cksichtigt werden soll und der Kunde erh\344lt den Ampelwert gr\374n oder gelb) Tj T* 0 Tw (und er erf\374llt den Identifikationsstatus nicht) Tj T* ET
|
3855 |
+
Q
|
3856 |
+
Q
|
3857 |
+
q
|
3858 |
+
Q
|
3859 |
+
Q
|
3860 |
+
q
|
3861 |
+
1 0 0 1 20 30 cm
|
3862 |
+
0 0 0 rg
|
3863 |
+
BT /F1 10 Tf 12 TL ET
|
3864 |
+
q
|
3865 |
+
1 0 0 1 6 3 cm
|
3866 |
+
q
|
3867 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
3868 |
+
Q
|
3869 |
+
Q
|
3870 |
+
q
|
3871 |
+
1 0 0 1 91.03937 3 cm
|
3872 |
+
q
|
3873 |
+
0 0 0 rg
|
3874 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (die Bonit\344tsdaten des Kunden \366ffne) Tj T* ET
|
3875 |
+
Q
|
3876 |
+
Q
|
3877 |
+
q
|
3878 |
+
Q
|
3879 |
+
Q
|
3880 |
+
q
|
3881 |
+
1 0 0 1 20 15 cm
|
3882 |
+
0 0 0 rg
|
3883 |
+
BT /F1 10 Tf 12 TL ET
|
3884 |
+
q
|
3885 |
+
1 0 0 1 6 3 cm
|
3886 |
+
q
|
3887 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
3888 |
+
Q
|
3889 |
+
Q
|
3890 |
+
q
|
3891 |
+
1 0 0 1 91.03937 3 cm
|
3892 |
+
q
|
3893 |
+
0 0 0 rg
|
3894 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
3895 |
+
Q
|
3896 |
+
Q
|
3897 |
+
q
|
3898 |
+
Q
|
3899 |
+
Q
|
3900 |
+
q
|
3901 |
+
1 0 0 1 20 0 cm
|
3902 |
+
0 0 0 rg
|
3903 |
+
BT /F1 10 Tf 12 TL ET
|
3904 |
+
q
|
3905 |
+
1 0 0 1 6 3 cm
|
3906 |
+
q
|
3907 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
3908 |
+
Q
|
3909 |
+
Q
|
3910 |
+
q
|
3911 |
+
1 0 0 1 91.03937 3 cm
|
3912 |
+
q
|
3913 |
+
0 0 0 rg
|
3914 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (sehe ich f\374r diese Pr\374fung die n\344chstniedrigere Ampelgruppe) Tj T* ET
|
3915 |
+
Q
|
3916 |
+
Q
|
3917 |
+
q
|
3918 |
+
Q
|
3919 |
+
Q
|
3920 |
+
q
|
3921 |
+
Q
|
3922 |
+
Q
|
3923 |
+
q
|
3924 |
+
1 0 0 1 62.69291 697.3701 cm
|
3925 |
+
Q
|
3926 |
+
q
|
3927 |
+
1 0 0 1 62.69291 679.3701 cm
|
3928 |
+
q
|
3929 |
+
0 0 0 rg
|
3930 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 16:) Tj T* ET
|
3931 |
+
Q
|
3932 |
+
Q
|
3933 |
+
q
|
3934 |
+
1 0 0 1 62.69291 673.3701 cm
|
3935 |
+
Q
|
3936 |
+
q
|
3937 |
+
1 0 0 1 62.69291 571.3701 cm
|
3938 |
+
0 0 0 rg
|
3939 |
+
BT /F1 10 Tf 12 TL ET
|
3940 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
3941 |
+
q
|
3942 |
+
1 0 0 1 20 96 cm
|
3943 |
+
Q
|
3944 |
+
q
|
3945 |
+
1 0 0 1 20 45 cm
|
3946 |
+
0 0 0 rg
|
3947 |
+
BT /F1 10 Tf 12 TL ET
|
3948 |
+
q
|
3949 |
+
1 0 0 1 6 39 cm
|
3950 |
+
q
|
3951 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
3952 |
+
Q
|
3953 |
+
Q
|
3954 |
+
q
|
3955 |
+
1 0 0 1 91.03937 3 cm
|
3956 |
+
q
|
3957 |
+
0 0 0 rg
|
3958 |
+
BT 1 0 0 1 0 38 Tm /F1 10 Tf 12 TL .440039 Tw (Das Expercash-Scoring-Modul ist installiert und ist so konfiguriert, dass das f\374r) Tj T* 0 Tw 3.183799 Tw (die Ampelgruppen gelb oder gr\374n zus\344tzlich noch der Identifikationsstatus) Tj T* 0 Tw .497309 Tw (ber\374cksichtigt werden soll und der Kunde erh\344lt den Ampelwert gr\374n oder gelb) Tj T* 0 Tw (und er erf\374llt den Identifikationsstatus) Tj T* ET
|
3959 |
+
Q
|
3960 |
+
Q
|
3961 |
+
q
|
3962 |
+
Q
|
3963 |
+
Q
|
3964 |
+
q
|
3965 |
+
1 0 0 1 20 30 cm
|
3966 |
+
0 0 0 rg
|
3967 |
+
BT /F1 10 Tf 12 TL ET
|
3968 |
+
q
|
3969 |
+
1 0 0 1 6 3 cm
|
3970 |
+
q
|
3971 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
3972 |
+
Q
|
3973 |
+
Q
|
3974 |
+
q
|
3975 |
+
1 0 0 1 91.03937 3 cm
|
3976 |
+
q
|
3977 |
+
0 0 0 rg
|
3978 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (die Bonit\344tsdaten des Kunden \366ffne) Tj T* ET
|
3979 |
+
Q
|
3980 |
+
Q
|
3981 |
+
q
|
3982 |
+
Q
|
3983 |
+
Q
|
3984 |
+
q
|
3985 |
+
1 0 0 1 20 15 cm
|
3986 |
+
0 0 0 rg
|
3987 |
+
BT /F1 10 Tf 12 TL ET
|
3988 |
+
q
|
3989 |
+
1 0 0 1 6 3 cm
|
3990 |
+
q
|
3991 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
3992 |
+
Q
|
3993 |
+
Q
|
3994 |
+
q
|
3995 |
+
1 0 0 1 91.03937 3 cm
|
3996 |
+
q
|
3997 |
+
0 0 0 rg
|
3998 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
3999 |
+
Q
|
4000 |
+
Q
|
4001 |
+
q
|
4002 |
+
Q
|
4003 |
+
Q
|
4004 |
+
q
|
4005 |
+
1 0 0 1 20 0 cm
|
4006 |
+
0 0 0 rg
|
4007 |
+
BT /F1 10 Tf 12 TL ET
|
4008 |
+
q
|
4009 |
+
1 0 0 1 6 3 cm
|
4010 |
+
q
|
4011 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
4012 |
+
Q
|
4013 |
+
Q
|
4014 |
+
q
|
4015 |
+
1 0 0 1 91.03937 3 cm
|
4016 |
+
q
|
4017 |
+
0 0 0 rg
|
4018 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (sehe ich f\374r diese Pr\374fung die originale Ampelgruppe) Tj T* ET
|
4019 |
+
Q
|
4020 |
+
Q
|
4021 |
+
q
|
4022 |
+
Q
|
4023 |
+
Q
|
4024 |
+
q
|
4025 |
+
Q
|
4026 |
+
Q
|
4027 |
+
q
|
4028 |
+
1 0 0 1 62.69291 571.3701 cm
|
4029 |
+
Q
|
4030 |
+
q
|
4031 |
+
1 0 0 1 62.69291 565.3701 cm
|
4032 |
+
Q
|
4033 |
+
q
|
4034 |
+
1 0 0 1 62.69291 565.3701 cm
|
4035 |
+
Q
|
4036 |
+
q
|
4037 |
+
1 0 0 1 62.69291 553.3701 cm
|
4038 |
+
0 0 0 rg
|
4039 |
+
BT /F1 10 Tf 12 TL ET
|
4040 |
+
q
|
4041 |
+
1 0 0 1 6 -3 cm
|
4042 |
+
q
|
4043 |
+
0 0 0 rg
|
4044 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (3.) Tj T* -5.66 0 Td ET
|
4045 |
+
Q
|
4046 |
+
Q
|
4047 |
+
q
|
4048 |
+
1 0 0 1 23 -3 cm
|
4049 |
+
q
|
4050 |
+
0 0 0 rg
|
4051 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Szenario "Filtern der Zahlmethoden gem\344\337 Ampelgruppe") Tj T* ET
|
4052 |
+
Q
|
4053 |
+
Q
|
4054 |
+
q
|
4055 |
+
Q
|
4056 |
+
Q
|
4057 |
+
q
|
4058 |
+
1 0 0 1 62.69291 553.3701 cm
|
4059 |
+
Q
|
4060 |
+
q
|
4061 |
+
1 0 0 1 62.69291 535.3701 cm
|
4062 |
+
q
|
4063 |
+
0 0 0 rg
|
4064 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 1:) Tj T* ET
|
4065 |
+
Q
|
4066 |
+
Q
|
4067 |
+
q
|
4068 |
+
1 0 0 1 62.69291 529.3701 cm
|
4069 |
+
Q
|
4070 |
+
q
|
4071 |
+
1 0 0 1 62.69291 439.3701 cm
|
4072 |
+
0 0 0 rg
|
4073 |
+
BT /F1 10 Tf 12 TL ET
|
4074 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
4075 |
+
q
|
4076 |
+
1 0 0 1 20 84 cm
|
4077 |
+
Q
|
4078 |
+
q
|
4079 |
+
1 0 0 1 20 45 cm
|
4080 |
+
0 0 0 rg
|
4081 |
+
BT /F1 10 Tf 12 TL ET
|
4082 |
+
q
|
4083 |
+
1 0 0 1 6 27 cm
|
4084 |
+
q
|
4085 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
4086 |
+
Q
|
4087 |
+
Q
|
4088 |
+
q
|
4089 |
+
1 0 0 1 91.03937 3 cm
|
4090 |
+
q
|
4091 |
+
0 0 0 rg
|
4092 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 5.788628 Tw (Das Expercash-Scoring-Modul ist installiert und die Einschr\344nkung der) Tj T* 0 Tw 3.590945 Tw (Zahlarten ist f\374r den Ampelwert "rot" konfiguriert und der Kunde hat als) Tj T* 0 Tw (Ergebnis der Bonit\344tspr\374fung den Ampelwert "rot") Tj T* ET
|
4093 |
+
Q
|
4094 |
+
Q
|
4095 |
+
q
|
4096 |
+
Q
|
4097 |
+
Q
|
4098 |
+
q
|
4099 |
+
1 0 0 1 20 30 cm
|
4100 |
+
0 0 0 rg
|
4101 |
+
BT /F1 10 Tf 12 TL ET
|
4102 |
+
q
|
4103 |
+
1 0 0 1 6 3 cm
|
4104 |
+
q
|
4105 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
4106 |
+
Q
|
4107 |
+
Q
|
4108 |
+
q
|
4109 |
+
1 0 0 1 91.03937 3 cm
|
4110 |
+
q
|
4111 |
+
0 0 0 rg
|
4112 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (den Zahlartenschritt \366ffne) Tj T* ET
|
4113 |
+
Q
|
4114 |
+
Q
|
4115 |
+
q
|
4116 |
+
Q
|
4117 |
+
Q
|
4118 |
+
q
|
4119 |
+
1 0 0 1 20 15 cm
|
4120 |
+
0 0 0 rg
|
4121 |
+
BT /F1 10 Tf 12 TL ET
|
4122 |
+
q
|
4123 |
+
1 0 0 1 6 3 cm
|
4124 |
+
q
|
4125 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
4126 |
+
Q
|
4127 |
+
Q
|
4128 |
+
q
|
4129 |
+
1 0 0 1 91.03937 3 cm
|
4130 |
+
q
|
4131 |
+
0 0 0 rg
|
4132 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
4133 |
+
Q
|
4134 |
+
Q
|
4135 |
+
q
|
4136 |
+
Q
|
4137 |
+
Q
|
4138 |
+
q
|
4139 |
+
1 0 0 1 20 0 cm
|
4140 |
+
0 0 0 rg
|
4141 |
+
BT /F1 10 Tf 12 TL ET
|
4142 |
+
q
|
4143 |
+
1 0 0 1 6 3 cm
|
4144 |
+
q
|
4145 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
4146 |
+
Q
|
4147 |
+
Q
|
4148 |
+
q
|
4149 |
+
1 0 0 1 91.03937 3 cm
|
4150 |
+
q
|
4151 |
+
0 0 0 rg
|
4152 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (sehe ich nur die f\374r den Ampelwert "rot" konfigurierten aktiven Zahlarten) Tj T* ET
|
4153 |
+
Q
|
4154 |
+
Q
|
4155 |
+
q
|
4156 |
+
Q
|
4157 |
+
Q
|
4158 |
+
q
|
4159 |
+
Q
|
4160 |
+
Q
|
4161 |
+
q
|
4162 |
+
1 0 0 1 62.69291 439.3701 cm
|
4163 |
+
Q
|
4164 |
+
q
|
4165 |
+
1 0 0 1 62.69291 421.3701 cm
|
4166 |
+
q
|
4167 |
+
0 0 0 rg
|
4168 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 2:) Tj T* ET
|
4169 |
+
Q
|
4170 |
+
Q
|
4171 |
+
q
|
4172 |
+
1 0 0 1 62.69291 415.3701 cm
|
4173 |
+
Q
|
4174 |
+
q
|
4175 |
+
1 0 0 1 62.69291 325.3701 cm
|
4176 |
+
0 0 0 rg
|
4177 |
+
BT /F1 10 Tf 12 TL ET
|
4178 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
4179 |
+
q
|
4180 |
+
1 0 0 1 20 84 cm
|
4181 |
+
Q
|
4182 |
+
q
|
4183 |
+
1 0 0 1 20 45 cm
|
4184 |
+
0 0 0 rg
|
4185 |
+
BT /F1 10 Tf 12 TL ET
|
4186 |
+
q
|
4187 |
+
1 0 0 1 6 27 cm
|
4188 |
+
q
|
4189 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
4190 |
+
Q
|
4191 |
+
Q
|
4192 |
+
q
|
4193 |
+
1 0 0 1 91.03937 3 cm
|
4194 |
+
q
|
4195 |
+
0 0 0 rg
|
4196 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 5.788628 Tw (Das Expercash-Scoring-Modul ist installiert und die Einschr\344nkung der) Tj T* 0 Tw 2.933672 Tw (Zahlarten ist f\374r den Ampelwert "gelb" konfiguriert und der Kunde hat als) Tj T* 0 Tw (Ergebnis der Bonit\344tspr\374fung den Ampelwert "gelb") Tj T* ET
|
4197 |
+
Q
|
4198 |
+
Q
|
4199 |
+
q
|
4200 |
+
Q
|
4201 |
+
Q
|
4202 |
+
q
|
4203 |
+
1 0 0 1 20 30 cm
|
4204 |
+
0 0 0 rg
|
4205 |
+
BT /F1 10 Tf 12 TL ET
|
4206 |
+
q
|
4207 |
+
1 0 0 1 6 3 cm
|
4208 |
+
q
|
4209 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
4210 |
+
Q
|
4211 |
+
Q
|
4212 |
+
q
|
4213 |
+
1 0 0 1 91.03937 3 cm
|
4214 |
+
q
|
4215 |
+
0 0 0 rg
|
4216 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (den Zahlartenschritt \366ffne) Tj T* ET
|
4217 |
+
Q
|
4218 |
+
Q
|
4219 |
+
q
|
4220 |
+
Q
|
4221 |
+
Q
|
4222 |
+
q
|
4223 |
+
1 0 0 1 20 15 cm
|
4224 |
+
0 0 0 rg
|
4225 |
+
BT /F1 10 Tf 12 TL ET
|
4226 |
+
q
|
4227 |
+
1 0 0 1 6 3 cm
|
4228 |
+
q
|
4229 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
4230 |
+
Q
|
4231 |
+
Q
|
4232 |
+
q
|
4233 |
+
1 0 0 1 91.03937 3 cm
|
4234 |
+
q
|
4235 |
+
0 0 0 rg
|
4236 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
4237 |
+
Q
|
4238 |
+
Q
|
4239 |
+
q
|
4240 |
+
Q
|
4241 |
+
Q
|
4242 |
+
q
|
4243 |
+
1 0 0 1 20 0 cm
|
4244 |
+
0 0 0 rg
|
4245 |
+
BT /F1 10 Tf 12 TL ET
|
4246 |
+
q
|
4247 |
+
1 0 0 1 6 3 cm
|
4248 |
+
q
|
4249 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
4250 |
+
Q
|
4251 |
+
Q
|
4252 |
+
q
|
4253 |
+
1 0 0 1 91.03937 3 cm
|
4254 |
+
q
|
4255 |
+
0 0 0 rg
|
4256 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (sehe ich nur die f\374r den Ampelwert "gelb" konfigurierten aktiven Zahlarten) Tj T* ET
|
4257 |
+
Q
|
4258 |
+
Q
|
4259 |
+
q
|
4260 |
+
Q
|
4261 |
+
Q
|
4262 |
+
q
|
4263 |
+
Q
|
4264 |
+
Q
|
4265 |
+
q
|
4266 |
+
1 0 0 1 62.69291 325.3701 cm
|
4267 |
+
Q
|
4268 |
+
q
|
4269 |
+
1 0 0 1 62.69291 307.3701 cm
|
4270 |
+
q
|
4271 |
+
0 0 0 rg
|
4272 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 3:) Tj T* ET
|
4273 |
+
Q
|
4274 |
+
Q
|
4275 |
+
q
|
4276 |
+
1 0 0 1 62.69291 301.3701 cm
|
4277 |
+
Q
|
4278 |
+
q
|
4279 |
+
1 0 0 1 62.69291 211.3701 cm
|
4280 |
+
0 0 0 rg
|
4281 |
+
BT /F1 10 Tf 12 TL ET
|
4282 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
4283 |
+
q
|
4284 |
+
1 0 0 1 20 84 cm
|
4285 |
+
Q
|
4286 |
+
q
|
4287 |
+
1 0 0 1 20 45 cm
|
4288 |
+
0 0 0 rg
|
4289 |
+
BT /F1 10 Tf 12 TL ET
|
4290 |
+
q
|
4291 |
+
1 0 0 1 6 27 cm
|
4292 |
+
q
|
4293 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
4294 |
+
Q
|
4295 |
+
Q
|
4296 |
+
q
|
4297 |
+
1 0 0 1 91.03937 3 cm
|
4298 |
+
q
|
4299 |
+
0 0 0 rg
|
4300 |
+
BT 1 0 0 1 0 26 Tm /F1 10 Tf 12 TL 5.788628 Tw (Das Expercash-Scoring-Modul ist installiert und die Einschr\344nkung der) Tj T* 0 Tw 2.832763 Tw (Zahlarten ist f\374r den Ampelwert "gr\374n" konfiguriert und der Kunde hat als) Tj T* 0 Tw (Ergebnis der Bonit\344tspr\374fung den Ampelwert "gr\374n") Tj T* ET
|
4301 |
+
Q
|
4302 |
+
Q
|
4303 |
+
q
|
4304 |
+
Q
|
4305 |
+
Q
|
4306 |
+
q
|
4307 |
+
1 0 0 1 20 30 cm
|
4308 |
+
0 0 0 rg
|
4309 |
+
BT /F1 10 Tf 12 TL ET
|
4310 |
+
q
|
4311 |
+
1 0 0 1 6 3 cm
|
4312 |
+
q
|
4313 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
4314 |
+
Q
|
4315 |
+
Q
|
4316 |
+
q
|
4317 |
+
1 0 0 1 91.03937 3 cm
|
4318 |
+
q
|
4319 |
+
0 0 0 rg
|
4320 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (den Zahlartenschritt \366ffne) Tj T* ET
|
4321 |
+
Q
|
4322 |
+
Q
|
4323 |
+
q
|
4324 |
+
Q
|
4325 |
+
Q
|
4326 |
+
q
|
4327 |
+
1 0 0 1 20 15 cm
|
4328 |
+
0 0 0 rg
|
4329 |
+
BT /F1 10 Tf 12 TL ET
|
4330 |
+
q
|
4331 |
+
1 0 0 1 6 3 cm
|
4332 |
+
q
|
4333 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
4334 |
+
Q
|
4335 |
+
Q
|
4336 |
+
q
|
4337 |
+
1 0 0 1 91.03937 3 cm
|
4338 |
+
q
|
4339 |
+
0 0 0 rg
|
4340 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
4341 |
+
Q
|
4342 |
+
Q
|
4343 |
+
q
|
4344 |
+
Q
|
4345 |
+
Q
|
4346 |
+
q
|
4347 |
+
1 0 0 1 20 0 cm
|
4348 |
+
0 0 0 rg
|
4349 |
+
BT /F1 10 Tf 12 TL ET
|
4350 |
+
q
|
4351 |
+
1 0 0 1 6 3 cm
|
4352 |
+
q
|
4353 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
4354 |
+
Q
|
4355 |
+
Q
|
4356 |
+
q
|
4357 |
+
1 0 0 1 91.03937 3 cm
|
4358 |
+
q
|
4359 |
+
0 0 0 rg
|
4360 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (sehe ich nur die f\374r den Ampelwert "gr\374n" konfigurierten aktiven Zahlarten) Tj T* ET
|
4361 |
+
Q
|
4362 |
+
Q
|
4363 |
+
q
|
4364 |
+
Q
|
4365 |
+
Q
|
4366 |
+
q
|
4367 |
+
Q
|
4368 |
+
Q
|
4369 |
+
q
|
4370 |
+
1 0 0 1 62.69291 211.3701 cm
|
4371 |
+
Q
|
4372 |
+
q
|
4373 |
+
1 0 0 1 62.69291 193.3701 cm
|
4374 |
+
q
|
4375 |
+
0 0 0 rg
|
4376 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 4:) Tj T* ET
|
4377 |
+
Q
|
4378 |
+
Q
|
4379 |
+
q
|
4380 |
+
1 0 0 1 62.69291 187.3701 cm
|
4381 |
+
Q
|
4382 |
+
q
|
4383 |
+
1 0 0 1 62.69291 109.3701 cm
|
4384 |
+
0 0 0 rg
|
4385 |
+
BT /F1 10 Tf 12 TL ET
|
4386 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
4387 |
+
q
|
4388 |
+
1 0 0 1 20 72 cm
|
4389 |
+
Q
|
4390 |
+
q
|
4391 |
+
1 0 0 1 20 45 cm
|
4392 |
+
0 0 0 rg
|
4393 |
+
BT /F1 10 Tf 12 TL ET
|
4394 |
+
q
|
4395 |
+
1 0 0 1 6 15 cm
|
4396 |
+
q
|
4397 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
4398 |
+
Q
|
4399 |
+
Q
|
4400 |
+
q
|
4401 |
+
1 0 0 1 91.03937 3 cm
|
4402 |
+
q
|
4403 |
+
0 0 0 rg
|
4404 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 3.574488 Tw (Das Expercash-Scoring-Modul ist installiert und f\374r den Kunden ist keine) Tj T* 0 Tw (Bonit\344tspr\374fung durchgef\374hrt wurden) Tj T* ET
|
4405 |
+
Q
|
4406 |
+
Q
|
4407 |
+
q
|
4408 |
+
Q
|
4409 |
+
Q
|
4410 |
+
q
|
4411 |
+
1 0 0 1 20 30 cm
|
4412 |
+
0 0 0 rg
|
4413 |
+
BT /F1 10 Tf 12 TL ET
|
4414 |
+
q
|
4415 |
+
1 0 0 1 6 3 cm
|
4416 |
+
q
|
4417 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
4418 |
+
Q
|
4419 |
+
Q
|
4420 |
+
q
|
4421 |
+
1 0 0 1 91.03937 3 cm
|
4422 |
+
q
|
4423 |
+
0 0 0 rg
|
4424 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (den Zahlartenschritt \366ffne) Tj T* ET
|
4425 |
+
Q
|
4426 |
+
Q
|
4427 |
+
q
|
4428 |
+
Q
|
4429 |
+
Q
|
4430 |
+
q
|
4431 |
+
1 0 0 1 20 15 cm
|
4432 |
+
0 0 0 rg
|
4433 |
+
BT /F1 10 Tf 12 TL ET
|
4434 |
+
q
|
4435 |
+
1 0 0 1 6 3 cm
|
4436 |
+
q
|
4437 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
4438 |
+
Q
|
4439 |
+
Q
|
4440 |
+
q
|
4441 |
+
1 0 0 1 91.03937 3 cm
|
4442 |
+
q
|
4443 |
+
0 0 0 rg
|
4444 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Kunde) Tj T* ET
|
4445 |
+
Q
|
4446 |
+
Q
|
4447 |
+
q
|
4448 |
+
Q
|
4449 |
+
Q
|
4450 |
+
q
|
4451 |
+
1 0 0 1 20 0 cm
|
4452 |
+
0 0 0 rg
|
4453 |
+
BT /F1 10 Tf 12 TL ET
|
4454 |
+
q
|
4455 |
+
1 0 0 1 6 3 cm
|
4456 |
+
q
|
4457 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
4458 |
+
Q
|
4459 |
+
Q
|
4460 |
+
q
|
4461 |
+
1 0 0 1 91.03937 3 cm
|
4462 |
+
q
|
4463 |
+
0 0 0 rg
|
4464 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (sehe ich alle f\374r mich aktiven Zahlarten) Tj T* ET
|
4465 |
+
Q
|
4466 |
+
Q
|
4467 |
+
q
|
4468 |
+
Q
|
4469 |
+
Q
|
4470 |
+
q
|
4471 |
+
Q
|
4472 |
+
Q
|
4473 |
+
q
|
4474 |
+
1 0 0 1 62.69291 109.3701 cm
|
4475 |
+
Q
|
4476 |
+
q
|
4477 |
+
1 0 0 1 62.69291 109.3701 cm
|
4478 |
+
Q
|
4479 |
+
|
4480 |
+
endstream
|
4481 |
+
endobj
|
4482 |
+
% 'R35': class PDFStream
|
4483 |
+
35 0 obj
|
4484 |
+
% page stream
|
4485 |
+
<< /Length 7636 >>
|
4486 |
+
stream
|
4487 |
+
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
|
4488 |
+
q
|
4489 |
+
1 0 0 1 62.69291 772.3701 cm
|
4490 |
+
q
|
4491 |
+
BT 1 0 0 1 0 3.5 Tm 21 TL /F2 17.5 Tf 0 .533333 .603922 rg (Verhalten im Backend) Tj T* ET
|
4492 |
+
Q
|
4493 |
+
Q
|
4494 |
+
q
|
4495 |
+
1 0 0 1 62.69291 760.3701 cm
|
4496 |
+
Q
|
4497 |
+
q
|
4498 |
+
1 0 0 1 62.69291 760.3701 cm
|
4499 |
+
Q
|
4500 |
+
q
|
4501 |
+
1 0 0 1 62.69291 748.3701 cm
|
4502 |
+
0 0 0 rg
|
4503 |
+
BT /F1 10 Tf 12 TL ET
|
4504 |
+
q
|
4505 |
+
1 0 0 1 6 -3 cm
|
4506 |
+
q
|
4507 |
+
0 0 0 rg
|
4508 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL 5.66 0 Td (1.) Tj T* -5.66 0 Td ET
|
4509 |
+
Q
|
4510 |
+
Q
|
4511 |
+
q
|
4512 |
+
1 0 0 1 23 -3 cm
|
4513 |
+
q
|
4514 |
+
0 0 0 rg
|
4515 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Szenario "Anzeige der Bonit\344tsdaten") Tj T* ET
|
4516 |
+
Q
|
4517 |
+
Q
|
4518 |
+
q
|
4519 |
+
Q
|
4520 |
+
Q
|
4521 |
+
q
|
4522 |
+
1 0 0 1 62.69291 748.3701 cm
|
4523 |
+
Q
|
4524 |
+
q
|
4525 |
+
1 0 0 1 62.69291 730.3701 cm
|
4526 |
+
q
|
4527 |
+
0 0 0 rg
|
4528 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 1:) Tj T* ET
|
4529 |
+
Q
|
4530 |
+
Q
|
4531 |
+
q
|
4532 |
+
1 0 0 1 62.69291 724.3701 cm
|
4533 |
+
Q
|
4534 |
+
q
|
4535 |
+
1 0 0 1 62.69291 646.3701 cm
|
4536 |
+
0 0 0 rg
|
4537 |
+
BT /F1 10 Tf 12 TL ET
|
4538 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
4539 |
+
q
|
4540 |
+
1 0 0 1 20 72 cm
|
4541 |
+
Q
|
4542 |
+
q
|
4543 |
+
1 0 0 1 20 45 cm
|
4544 |
+
0 0 0 rg
|
4545 |
+
BT /F1 10 Tf 12 TL ET
|
4546 |
+
q
|
4547 |
+
1 0 0 1 6 15 cm
|
4548 |
+
q
|
4549 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
4550 |
+
Q
|
4551 |
+
Q
|
4552 |
+
q
|
4553 |
+
1 0 0 1 91.03937 3 cm
|
4554 |
+
q
|
4555 |
+
0 0 0 rg
|
4556 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 2.277822 Tw (Das Expercash-Scoring-Modul ist installiert und aktiviert und der Kunde hat) Tj T* 0 Tw (noch keine Bonit\344tsdaten) Tj T* ET
|
4557 |
+
Q
|
4558 |
+
Q
|
4559 |
+
q
|
4560 |
+
Q
|
4561 |
+
Q
|
4562 |
+
q
|
4563 |
+
1 0 0 1 20 30 cm
|
4564 |
+
0 0 0 rg
|
4565 |
+
BT /F1 10 Tf 12 TL ET
|
4566 |
+
q
|
4567 |
+
1 0 0 1 6 3 cm
|
4568 |
+
q
|
4569 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
4570 |
+
Q
|
4571 |
+
Q
|
4572 |
+
q
|
4573 |
+
1 0 0 1 91.03937 3 cm
|
4574 |
+
q
|
4575 |
+
0 0 0 rg
|
4576 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (den Kunden im Backend \366ffne) Tj T* ET
|
4577 |
+
Q
|
4578 |
+
Q
|
4579 |
+
q
|
4580 |
+
Q
|
4581 |
+
Q
|
4582 |
+
q
|
4583 |
+
1 0 0 1 20 15 cm
|
4584 |
+
0 0 0 rg
|
4585 |
+
BT /F1 10 Tf 12 TL ET
|
4586 |
+
q
|
4587 |
+
1 0 0 1 6 3 cm
|
4588 |
+
q
|
4589 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
4590 |
+
Q
|
4591 |
+
Q
|
4592 |
+
q
|
4593 |
+
1 0 0 1 91.03937 3 cm
|
4594 |
+
q
|
4595 |
+
0 0 0 rg
|
4596 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
4597 |
+
Q
|
4598 |
+
Q
|
4599 |
+
q
|
4600 |
+
Q
|
4601 |
+
Q
|
4602 |
+
q
|
4603 |
+
1 0 0 1 20 0 cm
|
4604 |
+
0 0 0 rg
|
4605 |
+
BT /F1 10 Tf 12 TL ET
|
4606 |
+
q
|
4607 |
+
1 0 0 1 6 3 cm
|
4608 |
+
q
|
4609 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
4610 |
+
Q
|
4611 |
+
Q
|
4612 |
+
q
|
4613 |
+
1 0 0 1 91.03937 3 cm
|
4614 |
+
q
|
4615 |
+
0 0 0 rg
|
4616 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (sehe ich die Meldung, dass keine Daten verf\374gbar sind) Tj T* ET
|
4617 |
+
Q
|
4618 |
+
Q
|
4619 |
+
q
|
4620 |
+
Q
|
4621 |
+
Q
|
4622 |
+
q
|
4623 |
+
Q
|
4624 |
+
Q
|
4625 |
+
q
|
4626 |
+
1 0 0 1 62.69291 646.3701 cm
|
4627 |
+
Q
|
4628 |
+
q
|
4629 |
+
1 0 0 1 62.69291 628.3701 cm
|
4630 |
+
q
|
4631 |
+
0 0 0 rg
|
4632 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 2:) Tj T* ET
|
4633 |
+
Q
|
4634 |
+
Q
|
4635 |
+
q
|
4636 |
+
1 0 0 1 62.69291 622.3701 cm
|
4637 |
+
Q
|
4638 |
+
q
|
4639 |
+
1 0 0 1 62.69291 532.3701 cm
|
4640 |
+
0 0 0 rg
|
4641 |
+
BT /F1 10 Tf 12 TL ET
|
4642 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
4643 |
+
q
|
4644 |
+
1 0 0 1 20 84 cm
|
4645 |
+
Q
|
4646 |
+
q
|
4647 |
+
1 0 0 1 20 57 cm
|
4648 |
+
0 0 0 rg
|
4649 |
+
BT /F1 10 Tf 12 TL ET
|
4650 |
+
q
|
4651 |
+
1 0 0 1 6 15 cm
|
4652 |
+
q
|
4653 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
4654 |
+
Q
|
4655 |
+
Q
|
4656 |
+
q
|
4657 |
+
1 0 0 1 91.03937 3 cm
|
4658 |
+
q
|
4659 |
+
0 0 0 rg
|
4660 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 2.277822 Tw (Das Expercash-Scoring-Modul ist installiert und aktiviert und der Kunde hat) Tj T* 0 Tw (Bonit\344tsdaten) Tj T* ET
|
4661 |
+
Q
|
4662 |
+
Q
|
4663 |
+
q
|
4664 |
+
Q
|
4665 |
+
Q
|
4666 |
+
q
|
4667 |
+
1 0 0 1 20 42 cm
|
4668 |
+
0 0 0 rg
|
4669 |
+
BT /F1 10 Tf 12 TL ET
|
4670 |
+
q
|
4671 |
+
1 0 0 1 6 3 cm
|
4672 |
+
q
|
4673 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
4674 |
+
Q
|
4675 |
+
Q
|
4676 |
+
q
|
4677 |
+
1 0 0 1 91.03937 3 cm
|
4678 |
+
q
|
4679 |
+
0 0 0 rg
|
4680 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (den Kunden im Backend \366ffne) Tj T* ET
|
4681 |
+
Q
|
4682 |
+
Q
|
4683 |
+
q
|
4684 |
+
Q
|
4685 |
+
Q
|
4686 |
+
q
|
4687 |
+
1 0 0 1 20 27 cm
|
4688 |
+
0 0 0 rg
|
4689 |
+
BT /F1 10 Tf 12 TL ET
|
4690 |
+
q
|
4691 |
+
1 0 0 1 6 3 cm
|
4692 |
+
q
|
4693 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
4694 |
+
Q
|
4695 |
+
Q
|
4696 |
+
q
|
4697 |
+
1 0 0 1 91.03937 3 cm
|
4698 |
+
q
|
4699 |
+
0 0 0 rg
|
4700 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
4701 |
+
Q
|
4702 |
+
Q
|
4703 |
+
q
|
4704 |
+
Q
|
4705 |
+
Q
|
4706 |
+
q
|
4707 |
+
1 0 0 1 20 0 cm
|
4708 |
+
0 0 0 rg
|
4709 |
+
BT /F1 10 Tf 12 TL ET
|
4710 |
+
q
|
4711 |
+
1 0 0 1 6 15 cm
|
4712 |
+
q
|
4713 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
4714 |
+
Q
|
4715 |
+
Q
|
4716 |
+
q
|
4717 |
+
1 0 0 1 91.03937 3 cm
|
4718 |
+
q
|
4719 |
+
0 0 0 rg
|
4720 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL .44549 Tw (sehe ich eine Tabelle die die Bonit\344tsdaten sowie die korrigierten Kunden- und) Tj T* 0 Tw (Adressdaten von Expercash enth\344lt) Tj T* ET
|
4721 |
+
Q
|
4722 |
+
Q
|
4723 |
+
q
|
4724 |
+
Q
|
4725 |
+
Q
|
4726 |
+
q
|
4727 |
+
Q
|
4728 |
+
Q
|
4729 |
+
q
|
4730 |
+
1 0 0 1 62.69291 532.3701 cm
|
4731 |
+
Q
|
4732 |
+
q
|
4733 |
+
1 0 0 1 62.69291 514.3701 cm
|
4734 |
+
q
|
4735 |
+
0 0 0 rg
|
4736 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 3:) Tj T* ET
|
4737 |
+
Q
|
4738 |
+
Q
|
4739 |
+
q
|
4740 |
+
1 0 0 1 62.69291 508.3701 cm
|
4741 |
+
Q
|
4742 |
+
q
|
4743 |
+
1 0 0 1 62.69291 418.3701 cm
|
4744 |
+
0 0 0 rg
|
4745 |
+
BT /F1 10 Tf 12 TL ET
|
4746 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
4747 |
+
q
|
4748 |
+
1 0 0 1 20 84 cm
|
4749 |
+
Q
|
4750 |
+
q
|
4751 |
+
1 0 0 1 20 57 cm
|
4752 |
+
0 0 0 rg
|
4753 |
+
BT /F1 10 Tf 12 TL ET
|
4754 |
+
q
|
4755 |
+
1 0 0 1 6 15 cm
|
4756 |
+
q
|
4757 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
4758 |
+
Q
|
4759 |
+
Q
|
4760 |
+
q
|
4761 |
+
1 0 0 1 91.03937 3 cm
|
4762 |
+
q
|
4763 |
+
0 0 0 rg
|
4764 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 2.277822 Tw (Das Expercash-Scoring-Modul ist installiert und aktiviert und der Kunde hat) Tj T* 0 Tw (Bonit\344tsdaten) Tj T* ET
|
4765 |
+
Q
|
4766 |
+
Q
|
4767 |
+
q
|
4768 |
+
Q
|
4769 |
+
Q
|
4770 |
+
q
|
4771 |
+
1 0 0 1 20 42 cm
|
4772 |
+
0 0 0 rg
|
4773 |
+
BT /F1 10 Tf 12 TL ET
|
4774 |
+
q
|
4775 |
+
1 0 0 1 6 3 cm
|
4776 |
+
q
|
4777 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
4778 |
+
Q
|
4779 |
+
Q
|
4780 |
+
q
|
4781 |
+
1 0 0 1 91.03937 3 cm
|
4782 |
+
q
|
4783 |
+
0 0 0 rg
|
4784 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (den Kunden im Backend \366ffne) Tj T* ET
|
4785 |
+
Q
|
4786 |
+
Q
|
4787 |
+
q
|
4788 |
+
Q
|
4789 |
+
Q
|
4790 |
+
q
|
4791 |
+
1 0 0 1 20 27 cm
|
4792 |
+
0 0 0 rg
|
4793 |
+
BT /F1 10 Tf 12 TL ET
|
4794 |
+
q
|
4795 |
+
1 0 0 1 6 3 cm
|
4796 |
+
q
|
4797 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
4798 |
+
Q
|
4799 |
+
Q
|
4800 |
+
q
|
4801 |
+
1 0 0 1 91.03937 3 cm
|
4802 |
+
q
|
4803 |
+
0 0 0 rg
|
4804 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
4805 |
+
Q
|
4806 |
+
Q
|
4807 |
+
q
|
4808 |
+
Q
|
4809 |
+
Q
|
4810 |
+
q
|
4811 |
+
1 0 0 1 20 0 cm
|
4812 |
+
0 0 0 rg
|
4813 |
+
BT /F1 10 Tf 12 TL ET
|
4814 |
+
q
|
4815 |
+
1 0 0 1 6 15 cm
|
4816 |
+
q
|
4817 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
4818 |
+
Q
|
4819 |
+
Q
|
4820 |
+
q
|
4821 |
+
1 0 0 1 91.03937 3 cm
|
4822 |
+
q
|
4823 |
+
0 0 0 rg
|
4824 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL .982266 Tw (den Button 'alle Bonit\344tsdaten des Kunden l\366schen' dr\374cke sind anschlie\337end) Tj T* 0 Tw (alle Bonit\344tsdaten des Kunden gel\366scht) Tj T* ET
|
4825 |
+
Q
|
4826 |
+
Q
|
4827 |
+
q
|
4828 |
+
Q
|
4829 |
+
Q
|
4830 |
+
q
|
4831 |
+
Q
|
4832 |
+
Q
|
4833 |
+
q
|
4834 |
+
1 0 0 1 62.69291 418.3701 cm
|
4835 |
+
Q
|
4836 |
+
q
|
4837 |
+
1 0 0 1 62.69291 400.3701 cm
|
4838 |
+
q
|
4839 |
+
0 0 0 rg
|
4840 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (UC 4:) Tj T* ET
|
4841 |
+
Q
|
4842 |
+
Q
|
4843 |
+
q
|
4844 |
+
1 0 0 1 62.69291 394.3701 cm
|
4845 |
+
Q
|
4846 |
+
q
|
4847 |
+
1 0 0 1 62.69291 304.3701 cm
|
4848 |
+
0 0 0 rg
|
4849 |
+
BT /F1 10 Tf 12 TL ET
|
4850 |
+
BT 1 0 0 1 0 2 Tm T* ET
|
4851 |
+
q
|
4852 |
+
1 0 0 1 20 84 cm
|
4853 |
+
Q
|
4854 |
+
q
|
4855 |
+
1 0 0 1 20 57 cm
|
4856 |
+
0 0 0 rg
|
4857 |
+
BT /F1 10 Tf 12 TL ET
|
4858 |
+
q
|
4859 |
+
1 0 0 1 6 15 cm
|
4860 |
+
q
|
4861 |
+
BT 1 0 0 1 0 2 Tm 1.35937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Vorausgesetzt) Tj /F2 10 Tf (:) Tj T* -1.35937 0 Td ET
|
4862 |
+
Q
|
4863 |
+
Q
|
4864 |
+
q
|
4865 |
+
1 0 0 1 91.03937 3 cm
|
4866 |
+
q
|
4867 |
+
0 0 0 rg
|
4868 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 2.277822 Tw (Das Expercash-Scoring-Modul ist installiert und aktiviert und der Kunde hat) Tj T* 0 Tw (Bonit\344tsdaten) Tj T* ET
|
4869 |
+
Q
|
4870 |
+
Q
|
4871 |
+
q
|
4872 |
+
Q
|
4873 |
+
Q
|
4874 |
+
q
|
4875 |
+
1 0 0 1 20 42 cm
|
4876 |
+
0 0 0 rg
|
4877 |
+
BT /F1 10 Tf 12 TL ET
|
4878 |
+
q
|
4879 |
+
1 0 0 1 6 3 cm
|
4880 |
+
q
|
4881 |
+
BT 1 0 0 1 0 2 Tm 25.25937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Wenn ich) Tj /F2 10 Tf (:) Tj T* -25.25937 0 Td ET
|
4882 |
+
Q
|
4883 |
+
Q
|
4884 |
+
q
|
4885 |
+
1 0 0 1 91.03937 3 cm
|
4886 |
+
q
|
4887 |
+
0 0 0 rg
|
4888 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (den Kunden im Backend \366ffne) Tj T* ET
|
4889 |
+
Q
|
4890 |
+
Q
|
4891 |
+
q
|
4892 |
+
Q
|
4893 |
+
Q
|
4894 |
+
q
|
4895 |
+
1 0 0 1 20 27 cm
|
4896 |
+
0 0 0 rg
|
4897 |
+
BT /F1 10 Tf 12 TL ET
|
4898 |
+
q
|
4899 |
+
1 0 0 1 6 3 cm
|
4900 |
+
q
|
4901 |
+
BT 1 0 0 1 0 2 Tm 55.80937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (als) Tj /F2 10 Tf (:) Tj T* -55.80937 0 Td ET
|
4902 |
+
Q
|
4903 |
+
Q
|
4904 |
+
q
|
4905 |
+
1 0 0 1 91.03937 3 cm
|
4906 |
+
q
|
4907 |
+
0 0 0 rg
|
4908 |
+
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (H\344ndler) Tj T* ET
|
4909 |
+
Q
|
4910 |
+
Q
|
4911 |
+
q
|
4912 |
+
Q
|
4913 |
+
Q
|
4914 |
+
q
|
4915 |
+
1 0 0 1 20 0 cm
|
4916 |
+
0 0 0 rg
|
4917 |
+
BT /F1 10 Tf 12 TL ET
|
4918 |
+
q
|
4919 |
+
1 0 0 1 6 15 cm
|
4920 |
+
q
|
4921 |
+
BT 1 0 0 1 0 2 Tm 44.70937 0 Td 12 TL /F3 10 Tf 0 0 0 rg (Dann) Tj /F2 10 Tf (:) Tj T* -44.70937 0 Td ET
|
4922 |
+
Q
|
4923 |
+
Q
|
4924 |
+
q
|
4925 |
+
1 0 0 1 91.03937 3 cm
|
4926 |
+
q
|
4927 |
+
0 0 0 rg
|
4928 |
+
BT 1 0 0 1 0 14 Tm /F1 10 Tf 12 TL 1.72671 Tw (den Link 'l\366schen' eines einzelnen Datensatzes klicke dann ist anschlie\337end) Tj T* 0 Tw (dieser Datensatz gel\366scht) Tj T* ET
|
4929 |
+
Q
|
4930 |
+
Q
|
4931 |
+
q
|
4932 |
+
Q
|
4933 |
+
Q
|
4934 |
+
q
|
4935 |
+
Q
|
4936 |
+
Q
|
4937 |
+
q
|
4938 |
+
1 0 0 1 62.69291 304.3701 cm
|
4939 |
+
Q
|
4940 |
+
q
|
4941 |
+
1 0 0 1 62.69291 304.3701 cm
|
4942 |
+
Q
|
4943 |
+
|
4944 |
+
endstream
|
4945 |
+
endobj
|
4946 |
+
% 'R36': class PDFPageLabels
|
4947 |
+
36 0 obj
|
4948 |
+
% Document Root
|
4949 |
+
<< /Nums [ 0
|
4950 |
+
37 0 R
|
4951 |
+
1
|
4952 |
+
38 0 R
|
4953 |
+
2
|
4954 |
+
39 0 R
|
4955 |
+
3
|
4956 |
+
40 0 R
|
4957 |
+
4
|
4958 |
+
41 0 R
|
4959 |
+
5
|
4960 |
+
42 0 R
|
4961 |
+
6
|
4962 |
+
43 0 R
|
4963 |
+
7
|
4964 |
+
44 0 R
|
4965 |
+
8
|
4966 |
+
45 0 R
|
4967 |
+
9
|
4968 |
+
46 0 R
|
4969 |
+
10
|
4970 |
+
47 0 R ] >>
|
4971 |
+
endobj
|
4972 |
+
% 'R37': class PDFPageLabel
|
4973 |
+
37 0 obj
|
4974 |
+
% None
|
4975 |
+
<< /S /D
|
4976 |
+
/St 1 >>
|
4977 |
+
endobj
|
4978 |
+
% 'R38': class PDFPageLabel
|
4979 |
+
38 0 obj
|
4980 |
+
% None
|
4981 |
+
<< /S /D
|
4982 |
+
/St 2 >>
|
4983 |
+
endobj
|
4984 |
+
% 'R39': class PDFPageLabel
|
4985 |
+
39 0 obj
|
4986 |
+
% None
|
4987 |
+
<< /S /D
|
4988 |
+
/St 3 >>
|
4989 |
+
endobj
|
4990 |
+
% 'R40': class PDFPageLabel
|
4991 |
+
40 0 obj
|
4992 |
+
% None
|
4993 |
+
<< /S /D
|
4994 |
+
/St 4 >>
|
4995 |
+
endobj
|
4996 |
+
% 'R41': class PDFPageLabel
|
4997 |
+
41 0 obj
|
4998 |
+
% None
|
4999 |
+
<< /S /D
|
5000 |
+
/St 5 >>
|
5001 |
+
endobj
|
5002 |
+
% 'R42': class PDFPageLabel
|
5003 |
+
42 0 obj
|
5004 |
+
% None
|
5005 |
+
<< /S /D
|
5006 |
+
/St 6 >>
|
5007 |
+
endobj
|
5008 |
+
% 'R43': class PDFPageLabel
|
5009 |
+
43 0 obj
|
5010 |
+
% None
|
5011 |
+
<< /S /D
|
5012 |
+
/St 7 >>
|
5013 |
+
endobj
|
5014 |
+
% 'R44': class PDFPageLabel
|
5015 |
+
44 0 obj
|
5016 |
+
% None
|
5017 |
+
<< /S /D
|
5018 |
+
/St 8 >>
|
5019 |
+
endobj
|
5020 |
+
% 'R45': class PDFPageLabel
|
5021 |
+
45 0 obj
|
5022 |
+
% None
|
5023 |
+
<< /S /D
|
5024 |
+
/St 9 >>
|
5025 |
+
endobj
|
5026 |
+
% 'R46': class PDFPageLabel
|
5027 |
+
46 0 obj
|
5028 |
+
% None
|
5029 |
+
<< /S /D
|
5030 |
+
/St 10 >>
|
5031 |
+
endobj
|
5032 |
+
% 'R47': class PDFPageLabel
|
5033 |
+
47 0 obj
|
5034 |
+
% None
|
5035 |
+
<< /S /D
|
5036 |
+
/St 11 >>
|
5037 |
+
endobj
|
5038 |
+
xref
|
5039 |
+
0 48
|
5040 |
+
0000000000 65535 f
|
5041 |
+
0000000113 00000 n
|
5042 |
+
0000000245 00000 n
|
5043 |
+
0000000410 00000 n
|
5044 |
+
0000000583 00000 n
|
5045 |
+
0000000864 00000 n
|
5046 |
+
0000001051 00000 n
|
5047 |
+
0000001332 00000 n
|
5048 |
+
0000001511 00000 n
|
5049 |
+
0000001790 00000 n
|
5050 |
+
0000002069 00000 n
|
5051 |
+
0000002349 00000 n
|
5052 |
+
0000002629 00000 n
|
5053 |
+
0000002909 00000 n
|
5054 |
+
0000003189 00000 n
|
5055 |
+
0000003470 00000 n
|
5056 |
+
0000003751 00000 n
|
5057 |
+
0000004032 00000 n
|
5058 |
+
0000004191 00000 n
|
5059 |
+
0000004452 00000 n
|
5060 |
+
0000004577 00000 n
|
5061 |
+
0000004749 00000 n
|
5062 |
+
0000004945 00000 n
|
5063 |
+
0000005142 00000 n
|
5064 |
+
0000005307 00000 n
|
5065 |
+
0000005502 00000 n
|
5066 |
+
0000005833 00000 n
|
5067 |
+
0000007888 00000 n
|
5068 |
+
0000018324 00000 n
|
5069 |
+
0000029624 00000 n
|
5070 |
+
0000031267 00000 n
|
5071 |
+
0000041720 00000 n
|
5072 |
+
0000051251 00000 n
|
5073 |
+
0000061541 00000 n
|
5074 |
+
0000070860 00000 n
|
5075 |
+
0000082415 00000 n
|
5076 |
+
0000090154 00000 n
|
5077 |
+
0000090378 00000 n
|
5078 |
+
0000090455 00000 n
|
5079 |
+
0000090532 00000 n
|
5080 |
+
0000090609 00000 n
|
5081 |
+
0000090686 00000 n
|
5082 |
+
0000090763 00000 n
|
5083 |
+
0000090840 00000 n
|
5084 |
+
0000090917 00000 n
|
5085 |
+
0000090994 00000 n
|
5086 |
+
0000091071 00000 n
|
5087 |
+
0000091149 00000 n
|
5088 |
+
trailer
|
5089 |
+
<< /ID
|
5090 |
+
% ReportLab generated PDF document -- digest (http://www.reportlab.com)
|
5091 |
+
[(\251-\011\315\(\371\012\241\011\274\(\222\360T\)\320) (\251-\011\315\(\371\012\241\011\274\(\222\360T\)\320)]
|
5092 |
+
|
5093 |
+
/Info 18 0 R
|
5094 |
+
/Root 17 0 R
|
5095 |
+
/Size 48 >>
|
5096 |
+
startxref
|
5097 |
+
91197
|
5098 |
+
%%EOF
|
js/expercash/scoring.js
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
ExperCashValidation = Class.create();
|
2 |
+
ExperCashValidation.prototype = {
|
3 |
+
initialize: function() {
|
4 |
+
},
|
5 |
+
/**
|
6 |
+
* appends the solvency checkbox to the billing address
|
7 |
+
*/
|
8 |
+
appendSolvencyCheckToBilling: function () {
|
9 |
+
$('billing-buttons-container').parentNode.insertBefore($('scoring_agreement'), $('billing-buttons-container'));
|
10 |
+
}
|
11 |
+
};
|
12 |
+
|
package.xml
ADDED
@@ -0,0 +1,2 @@
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<package><name>Expercash_Risk_Management</name><version>15.01.06</version><stability>stable</stability><license>OSL3</license><channel>community</channel><extends></extends><summary>Expercash Risk Management Module</summary><description>Expercash Risk Management Module</description><notes></notes><authors><author><name>Sebastian Ertner</name><user>sebastianertner</user><email>sebastian.ertner@netresearch.de</email></author></authors><date>2015-01-05</date><time>14:05:44</time><compatible></compatible><dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies><contents><target name="mage"><dir name="doc"><dir name="Expercash_Scoring"><file name="ChangeLog.pdf" hash="e80f3c9a1a611d2f99107262332d7651"/><file name="EndUserDocumentation.pdf" hash="7d0ef60c2a8e6f554ef9661c964c81db"/><file name="Endkundendokumentation.pdf" hash="26c5b35c781e902af5ab64cf8481a0a2"/><file name="Specification.pdf" hash="c5d0eef64d5b862f2b7485e7f5d2724f"/></dir></dir><dir name="app"><dir name="locale"><dir name="de_DE"><file name="Expercash_Scoring.csv" hash="fdfdde5b74adf79a1cd0e522921ca665"/></dir><dir name="en_US"><file name="Expercash_Scoring.csv" hash="2188699d3d0bf0bee0a12bbbe9c010ed"/></dir></dir><dir name="design"><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="expercash-scoring"><dir name="scoring"><file name="agreement.phtml" hash="ba357e0e79cabf3edfde91df1246a914"/></dir></dir></dir><dir name="layout"><file name="scoring.xml" hash="e7b32b67961afea4e3580b4635d8a6b1"/></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="expercash_scoring.xml" hash="8827d4f0a4941f880fa574b4456c8bf7"/></dir></dir></dir></dir></dir><dir name="code"><dir name="community"><dir name="Expercash"><dir name="Scoring"><dir name="sql"><dir name="expercash_scoring_setup"><file name="mysql4-install-13.12.05.php" hash="0df165ef0d66c3c2f4c8b4ad502b00bc"/><file name="mysql4-upgrade-13.12.05-13.12.20.php" hash="1ebf40a560d85dbfacf93308375bd23a"/><file name="mysql4-upgrade-13.12.20-14.01.08.php" hash="2f271cbabfa2fd4b38be003b1520994a"/></dir></dir><dir name="Test"><dir name="Helper"><file name="DataTest.php" hash="6751307497a20d1a80da6a3d49b85e95"/><dir name="Request"><file name="AdapterTest.php" hash="699988d7c3657d6a1f543825da550428"/></dir></dir><dir name="Model"><file name="ConfigTest.php" hash="e35631173d76361bd57dba44976c747a"/><file name="ObserverTest.php" hash="3de7e79e622f570ecad34f08fa4c413b"/><dir name="Mysql4"><dir name="Solvency"><dir name="Check"><dir name="Result"><file name="CollectionTest.php" hash="7f9f775df4cf31d549c2e45d78c9c8ba"/><dir name="CollectionTest"><dir name="fixtures"><file name="checks.yaml" hash="7e6d962fb6fe5430aa4e519671c60eef"/></dir></dir></dir></dir></dir></dir><dir name="Solvency"><file name="CheckTest.php" hash="84fe1ee11e4a065a9a63833fa06dacb2"/><dir name="Check"><file name="ClientTest.php" hash="f699763c23cd6c9c5d09e82bcd1fcd4d"/><file name="ResponseTest.php" hash="078770f66b51e59fda832d92bbb5d990"/><file name="ResultTest.php" hash="74930ad8b5634f7485b32d346e361d5b"/><dir name="ResultTest"><dir name="fixtures"><file name="solvency_check_result.yaml" hash="3a1012306fc16faae98441bcb12dfcf0"/></dir></dir><dir name="ResponseTest"><dir name="TestFiles"><file name="CompleteSuccessfulResponse.xml" hash="be7cba06df11b521326ec7e61cac0c23"/><file name="InvalidResponse.xml" hash="1e488fac41a6f0aa52713b363c4b6fa6"/><file name="SuccessfulResponseEscoreScoring.xml" hash="6397ba713a5cc889815910c1ea84f35e"/><file name="SuccessfulResponseMissingEscore.xml" hash="161e992e44a827f75b3ed630507cd44b"/><file name="SuccessfulResponseMissingEscoreFeature.xml" hash="58f400b927523a2bd703ecf4d3f7936c"/></dir></dir></dir></dir><dir name="Config"><dir name="Source"><dir name="Scoring"><file name="ConditionTest.php" hash="2cdf133f3b86a5309624757b27003224"/><file name="ValueTest.php" hash="d844a06c340357a6308e1da6c42ed0f3"/></dir></dir></dir><dir name="Quote"><dir name="Amount"><file name="ValidationTest.php" hash="e745fd97e1e83d5e3b2a4fb3eae7aaaf"/></dir><dir name="Address"><file name="ValidationTest.php" hash="33e1bef57f4010a621b2281d7820f12a"/></dir></dir><dir name="Checkout"><dir name="Payment"><dir name="Methods"><file name="FilterTest.php" hash="6e813feb202977c3029ed3f92debe032"/></dir></dir></dir></dir><dir name="Block"><dir name="Adminhtml"><dir name="Customer"><dir name="Edit"><dir name="Tab"><dir name="Expercash"><file name="ScoringTest.php" hash="b2b892538143fbca29f99affa40f20c3"/><dir name="Expercash"><dir name="Address"><file name="CountryTest.php" hash="08aadd42dd964e7b234f1ba79d0bfad5"/><file name="StreetTest.php" hash="88df0110a8ba04724d0f7edb82a289b4"/></dir><dir name="Escore"><file name="ConditionTest.php" hash="4b2a35811f0505b82462f35d81918d36"/><file name="ValueTest.php" hash="6cf7b5be2f01c363710a5875f7af7ea2"/></dir><dir name="Customer"><file name="GenderTest.php" hash="183ba26aa0a5906106b13213bdc9ee22"/></dir></dir></dir></dir></dir></dir></dir><dir name="Checkout"><dir name="Onepage"><dir name="Billing"><file name="AgreementTest.php" hash="2c9ac352ca67ba9c8f5038d9bec5d82d"/></dir></dir></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="fc2634de9b543f0ab2db33a04d16ee33"/><dir name="Request"><dir name="Params"><file name="Adapter.php" hash="f8bdab3ea023041e742836ebe3f848c1"/></dir></dir></dir><dir name="Model"><file name="Config.php" hash="246181eff17a32e6d7f456cf53e5d43d"/><file name="Observer.php" hash="fba1ccc2f80740ac8d4481284c7244e7"/><dir name="Mysql4"><dir name="Solvency"><dir name="Check"><file name="Result.php" hash="a103741871e39fbe100c254d6c152410"/><dir name="Result"><file name="Collection.php" hash="e6703116abac5d61504dd2e03af870a9"/></dir></dir></dir></dir><dir name="Solvency"><file name="Check.php" hash="b7e818fb7e05d1fdbf90556cb47c2667"/><dir name="Check"><file name="Client.php" hash="d2582426366303841e94887a476ebe77"/><file name="Response.php" hash="91982dc223b5d2fa71a9a88a5a9aaa82"/><file name="Result.php" hash="a28a40ec02074e598959b53a23d87bdd"/></dir></dir><dir name="System"><dir name="Config"><dir name="Source"><dir name="Scoring"><file name="Condition.php" hash="7f285566f17cca093ad3883f159e1003"/><file name="Value.php" hash="c181b8e7ccb856bb1013a146ba7aba5f"/></dir></dir></dir></dir><dir name="Quote"><dir name="Amount"><file name="Validation.php" hash="8a63b7c9eef291b7bf4b324755cbc706"/></dir><dir name="Address"><file name="Validation.php" hash="46c3a8e051c37f06a0490163a3f400de"/></dir></dir><dir name="Checkout"><dir name="Payment"><dir name="Methods"><file name="Filter.php" hash="eaca0af3c666ab56407300c6edd2f6c5"/></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="ScoringController.php" hash="77609bf390166329ba6b58b325f653f5"/></dir></dir><dir name="Block"><dir name="Adminhtml"><dir name="Field"><dir name="Country"><file name="Renderer.php" hash="30929a047a1f33d7c5c2ad0cf6f12e01"/></dir></dir><dir name="Customer"><dir name="Edit"><dir name="Tab"><dir name="Expercash"><file name="Scoring.php" hash="dd096c03e6f8d763f3a215f949f194a8"/><dir name="Renderer"><dir name="Address"><file name="Country.php" hash="1f70078e708b7dc7327e559a6d1f83c4"/><file name="Street.php" hash="ba835acb4b8788e31f5e141015cb6cfa"/></dir><dir name="Escore"><file name="Condition.php" hash="8f2bb68a4fd2d6651e3e9c29cd2a0203"/><file name="Value.php" hash="d35bca84d2bbf7a352afaf9a9ed5560b"/></dir><dir name="Customer"><file name="Gender.php" hash="fa1b9ecb580551273099bb8ff54cb0bc"/></dir></dir></dir></dir></dir></dir></dir><dir name="Checkout"><dir name="Onepage"><dir name="Billing"><file name="Agreement.php" hash="323e1e5aad7f4d39ecb686cac979d0a6"/></dir></dir></dir></dir><dir name="etc"><file name="config.xml" hash="82a79ca393557fb289f9594feebd1d19"/><file name="system.xml" hash="1d39665910a13967f6162de6478510a0"/></dir></dir></dir></dir></dir><dir name="etc"><dir name="modules"><file name="Expercash_Scoring.xml" hash="5e3537f102f2795bf8bd2fc6ad5b10c2"/></dir></dir></dir><dir name="js"><dir name="expercash"><file name="scoring.js" hash="866c360088f3ac21f7ecdbd6a924b010"/></dir></dir></target></contents></package>
|